C# 发现WCF失败,套接字在XP上的上下文中无效?
我正在尝试在.NET4.0中使用WCF的发现机制。它在Windows 7上工作,但在XP计算机上失败,出现套接字异常,表示“请求的地址在其上下文中无效”(端点是soap)。udp://239.255.255.250:3702) Windows7VSXP是不是在转移视线?netstat似乎没有显示任何冲突。我错过了什么 我创建了一个简化的测试服务,使用以下配置显示问题:C# 发现WCF失败,套接字在XP上的上下文中无效?,c#,wcf,service-discovery,C#,Wcf,Service Discovery,我正在尝试在.NET4.0中使用WCF的发现机制。它在Windows 7上工作,但在XP计算机上失败,出现套接字异常,表示“请求的地址在其上下文中无效”(端点是soap)。udp://239.255.255.250:3702) Windows7VSXP是不是在转移视线?netstat似乎没有显示任何冲突。我错过了什么 我创建了一个简化的测试服务,使用以下配置显示问题: <configuration> <system.serviceModel> <beha
<configuration>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceMetadata/>
<serviceDiscovery />
</behavior>
</serviceBehaviors>
<endpointBehaviors>
<behavior>
<endpointDiscovery />
</behavior>
</endpointBehaviors>
</behaviors>
<services>
<service name="HelloWorldService">
<host>
<baseAddresses>
<add baseAddress="http://localhost/Demo"/>
</baseAddresses>
</host>
<endpoint kind="mexEndpoint" />
<endpoint kind="udpDiscoveryEndpoint" />
<endpoint contract="Test.IHelloWorld"
address="/Hello"
binding="basicHttpBinding" />
</service>
</services>
</system.serviceModel>
</configuration>
有一个问题已登录。不幸的是,目前没有解决办法,Microsoft的响应是 你提到的例外是 通常在尝试绑定时命中 套接字到一个IP地址,该地址不是 有效。你能帮我查一下这个吗 如果可能的话,试着在一台带有 不同的操作系统。目前没有 WCF发现的已知限制 XP上的功能
XP机器在防火墙或路由器后面吗?具体来说,地址239.255.255.250是否真的属于XP机器,还是它实际使用NAT地址?试着运行ipconfig,看看它认为自己拥有什么。XP机器在路由器后面。机器的IP地址(来自ipconfig)为192.168.1.104。我不知道你要带着这个去哪里,但我什么都可以试试!我以为239.255.255.250地址是服务发现的著名多播地址?事实上,我自己也不确定,但这是一种预感。虽然我不认为我的答案是一个真正的解决方案,但如果我有同样的问题,这将是我的第一条线索。这看起来很不舒服,就像我看到的一样。这可能是答案,但我会暂且不做这样的标记,希望有一个更快乐的结局@罗斯:我希望你能找到解决办法。。。我觉得有个问题,微软需要发布一个修补程序。我建议您在Microsoft Connect上发布,这样至少会有其他人报告此问题。祝你好运:)这本身不是一个真正的答案,但我可能会得到一个很好的线索。谢谢