3
我有一個應用程序在端口IP1結合:用5個虛擬IP地址(IP1-IP5)聽力同一端口,不同的IP地址,WCF +非WCF應用上
然後我試圖綁定的機器的80一個自託管的WCF服務到IP5:80,但得到一個AlreadyInUseException。我想WCF試圖綁定到整個IP範圍,儘管我指定了一個特定的事實。
這是已知的行爲嗎?
[start application that binds to IP1:80]
string baseAddress = "http://IP5:80/binary";
ServiceHost host = new ServiceHost(typeof(BinaryService),
new Uri(baseAddress));
host.AddServiceEndpoint(typeof(IBinaryService), GetBinding(), "")
.Behaviors.Add(new WebHttpBehavior());
host.Open(); // exception
是什麼讓你「猜測WCF試圖綁定整個IP範圍」?該IP上的端口不能被使用,類似於[這種情況](http://stackoverflow.com/a/2399920/419956)? – Jeroen
我認爲這個的原因:我可以在IP5上運行非wcf應用程序的另一個實例:80,它工作得很好。另一方面,WCF只有在所有IP上的端口都空閒時纔會啓動。 –
「IP5」是電腦的*名稱*嗎? WCF將綁定到計算機,而不是一個特定的IP地址,如果你這樣做... –