兩種WCF地址詳細(xì)對比
WCF是一個功能強(qiáng)大的應(yīng)用工具,它的出現(xiàn)給程序員們帶來了非常大的幫助。我們今天將會通過對WCF地址的兩種常見狀態(tài)的對比進(jìn)行分析,希望大家可以從中獲得一些幫助,并對WCF有一個更加深入的認(rèn)識。
WCF地址中,物理地址負(fù)責(zé)使用特定的傳輸協(xié)議在特定的位置接收傳入的消息,除非特別指定,否則邏輯地址將被用來做物理地址,換句話說,在以前我們對于終結(jié)點所配置的EndpointAddress都是指定了邏輯地址,如我們的服務(wù)端配置如下:
- < endpoint address="http://localhost:8887/CalculatorService1"
 - binding ="wsHttpBinding"
 - contract="TerryLee.WCFAddressing.Contract.ICalculator">
 - < /endpoint>
 - < endpoint address="http://localhost:8887/CalculatorService2"
 - binding ="basicHttpBinding"
 - contract="TerryLee.WCFAddressing.Contract.ICalculator">
 - < /endpoint>
 
現(xiàn)在我們輸出一下,就可以看到兩個WCF地址是同樣的值,如下代碼所示:
- using (ServiceHost calculatorServiceHost =
 - new ServiceHost(typeof(CalculatorService)))
 - {
 - calculatorServiceHost.Opened += delegate
 - {
 - Console.WriteLine("Service begin to listen via the Address:{0}",
 - calculatorServiceHost.BaseAddresses[0].ToString());
 - };
 - calculatorServiceHost.Open();
 - foreach (ServiceEndpoint se in calculatorServiceHost.
 
Description.Endpoints)- {
 - Console.WriteLine("Endpoint details:");
 - Console.WriteLine("Logical address: \t{0}", se.Address);
 - Console.WriteLine("Physical address: \t{0}", se.ListenUri);
 - Console.WriteLine("Binding: \t{0}", se.Binding.Name);
 - Console.WriteLine();
 - }
 - Console.Read();
 - }
 
以上就是對WCF地址的相關(guān)介紹。
【編輯推薦】















 
 
 

 
 
 
 