.net – WCF配置文件:为什么我们在Binding部分需要clientBaseAddress?

WCF配置中有三个部分用于服务客户端:

看看bindings => clientBaseAddress

为什么我们需要指定回调地址?
这个字段是否必需?
为什么.NET无法确定客户端的地址?
这是否意味着我可以指定位于其他机器上的客户端端点?

<configuration>
  <system.serviceModel>
    <client>
      <endpoint address=
    </client>
    <bindings>
      <wsDualHttpBinding>
        <binding name=
                 clientBaseAddress=
                 maxBufferPoolSize="2147483647"
                 maxReceivedMessageSize="2147483647"
        </binding>
      </wsDualHttpBinding>
    </bindings>
    <behaviors>
      <endpointBehaviors>
        <behavior name=>
        </behavior>
      </endpointBehaviors>
    </behaviors>
  </system.serviceModel>

最佳答案 因为您使用的是wshttpdualbinding,所以如果您在Windows XP上运行,则需要ClientBaseAddress.如果您不使用XP,您应该可以将其删除.

有关详细信息,请参阅此处:http://blogs.msdn.com/b/wenlong/archive/2006/10/19/how-to-use-wsdualhttpbinding-on-windows-xp-for-hosted-services.aspx

点赞