WCF客户端使用多个服务

SCE*_*CEV 6 wcf basichttpbinding

我试图弄清楚如何设置我的web.config(客户端)以使用另一个使用另一个使用另一个不同的WCF Web服务

我有两个端点,我想我需要两个不同的Binding配置.这是我当前的绑定节点:

<basicHttpBinding>
    <binding name="WebServiceProxyServiceSoapBinding" closeTimeout="00:01:00"
        openTimeout="00:01:00" receiveTimeout="00:01:00" sendTimeout="00:01:00"
        allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
        maxBufferSize="2147483647" maxBufferPoolSize="524288" maxReceivedMessageSize="2147483647"
        messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true">
      <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
          maxBytesPerRead="4096" maxNameTableCharCount="16384" />
      <security mode="Transport">
        <transport clientCredentialType="None" proxyCredentialType="None" realm="" />
        <message clientCredentialType="UserName" algorithmSuite="Default" />
      </security>
    </binding>
  </basicHttpBinding>
Run Code Online (Sandbox Code Playgroud)

我无法添加另一个basicHttpBinding节点.问题是,如果我改变的是模式参数,<security mode="Transport">那么绑定对于一个或另一个端点将起作用.

这似乎是一个常见的问题,但还没有找到答案.总的来说,在简单的消费和调用之外,我对WCF(如果不是很明显)的体验并不是很好.任何帮助都会很棒!

这篇文章很接近但不完全相同,因为它们不需要不同的安全模式: 如何从一个客户端使用多个WCF服务

提前致谢.

Dre*_*rsh 8

您只需要在<binding>节点下添加另一个节点,该节点具有不同的名称和您喜欢的任何不同选项<basicHttpBinding>.

然后,显然,只需通过在bindingConfiguration每个<endpoint>节点的属性中设置适当的名称,确保每个客户端都配置为使用特定于它们的绑定.