詳細說明WFC端口配置問題
本文主要講述WFC端口的配置問題,怎樣制定WFC端口。這些內容都是一些門戶網站和技術論壇找到的,中間可能有不少錯誤是我沒有挑出的,歡迎大家指正。希望大家多多學習。
對于一些常用網絡服務,WFC端口他們都有一個知名的端口好與之匹配。比如,FTP服務是用的TCP端口為21;Telnet服務的TCP端口為23等等。而對于客戶端通常對所使用的端口并不關心,只需要保證端口在本機是***的就可以了,這樣的端口又成為臨時端口,臨時端口一般在1024到5000之間。
一般來講,在某一個時刻,一個端口只能供一個應用程序使用。對于WCF來說,當我們通過一個托管的應用程序對某個服務進行寄宿的時候,一個端口被該應用程序獨占使用。如何多個寄宿進行使用相同的端口。#t#
在下面的WFC端口例子中,我通過兩個不同的控制臺應用程序對兩個服務,Service1和Service2進行寄宿,兩個服務的終結點地址共享相同的端口:9999。
當我們先后運行這兩個服務WFC端口寄宿應用程序,***個能夠正常運行,但是對于第二個,則會拋出如下一個AdressAlreadyInUseException異常,錯誤信息為:
- using(ServiceHost serviceHost = new ServiceHost(typeof(Service1)))
- {
- serviceHost.AddServiceEndpoint(typeof(IService1), new NetTcpBinding(), "net.tcp://127.0.0.1:9999/service1");
- serviceHost.Open();
- Console.Read();
- }
- }
IP 終結點 127.0.0.1:9999 上已有偵聽器。請確保未在應用程序中多次嘗試使用該終結點,并確保沒有其他應用程序在偵聽該終結點。