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地址,如果你这样做... –