【问题标题】:WCF with discovery fails with socket not valid in its context on XP?带有发现的 WCF 失败,套接字在 XP 上的上下文中无效?
【发布时间】:2011-01-22 16:41:15
【问题描述】:

我正在尝试在 .NET 4.0 中使用 WCF 的发现机制。它在 Windows 7 上工作,但在 XP 机器上失败,并出现套接字异常,指出“请求的地址在其上下文中无效”(端点是 soap.udp://239.255.255.250:3702)。

Windows 7 与 XP 的对比是红鲱鱼吗? netstat 似乎没有显示任何冲突。我在这里错过了什么?

我创建了一个简化的测试服务,使用以下配置显示问题:

<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>

【问题讨论】:

    标签: c# wcf service-discovery


    【解决方案1】:

    Microsoft Connect 上记录了一个问题。不幸的是,目前没有解决方法,微软的回应是

    你提到的例外是 通常在尝试绑定时被击中 连接到非 IP 地址的套接字 有效的。你能检查一下吗? 如果可能的话,在一台机器上试试 不同的操作系统。目前没有 WCF 发现的已知限制 XP 上的功能。

    【讨论】:

    • 这看起来像我看到的那样不舒服。这可能是答案,但我会推迟这样标记,希望有一个更幸福的结局!
    • @Russ:我希望你能找到解决方案……我的感觉是有问题,MS 需要发布一个 HotFix。我建议您在 Microsoft Connect 上发帖,以便至少另一个人会报告该问题。祝你好运:)
    • 本身并不是一个真正的答案,但我可能会得到一个很好的线索。谢谢!
    【解决方案2】:

    XP 机器是否在防火墙或路由器后面?具体来说,地址239.255.255.250是真的属于XP机器,还是真的使用了NAT地址?尝试运行 ipconfig 看看它认为它有什么。

    【讨论】:

    • XP 机器在路由器后面。机器的 IP 地址(来自 ipconfig)是 192.168.1.104。不知道你要去哪里,但我会尝试大多数事情!我以为 239.255.255.250 地址是众所周知的用于服务发现的多播地址?
    • 其实我自己也不确定,但这是一种预感。虽然我不认为我的答案是真正的解决方案,但如果我遇到同样的问题,这将是我的第一个线索。
    猜你喜欢
    • 2015-08-05
    • 1970-01-01
    • 2015-12-28
    • 2014-02-06
    • 2013-07-19
    • 2016-01-07
    • 2011-08-14
    • 1970-01-01
    • 2011-03-04
    相关资源
    最近更新 更多