WCF错误:客户端和服务绑定可能不匹配? [英] WCF Error: the client and service bindings may be mismatched?

查看:112
本文介绍了WCF错误:客户端和服务绑定可能不匹配?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

喜结果
让看到服务器配置和客户端配置。然后帮我找到这些CONFIGS的区别!

Hi
let see server config and client config. Then help me find difference between these configs!!

<system.serviceModel>
<client>
  <endpoint address="http://localhost/admin2/AdminCentralService.svc"
            binding="wsHttpBinding"
            bindingConfiguration="WSHttpBinding_Config"
            contract="TIR.ThreeTier.ICommandInvoker"
            name="AdminCentralServiceConfig" />
  <endpoint binding="wsHttpBinding"
            bindingConfiguration="WSHttpBinding_Config"
            contract="TIR.ThreeTier.ICommandInvoker"
            name="CommandInvokerConfig" />
</client>

<bindings>
  <wsHttpBinding>
    <binding name="WSHttpBinding_Config"
             closeTimeout="00:10:00"
             openTimeout="00:10:00"
             receiveTimeout="00:10:00"
             sendTimeout="00:10:00"
             bypassProxyOnLocal="false"
             transactionFlow="false"
             hostNameComparisonMode="StrongWildcard"
             maxBufferPoolSize="2147483647"
             maxReceivedMessageSize="2147483647"
             messageEncoding="Mtom"
             textEncoding="utf-8"
             useDefaultWebProxy="true"
             allowCookies="false">
      <readerQuotas maxDepth="2147483647"
                    maxStringContentLength="2147483647"
                    maxArrayLength="2147483647"
                    maxBytesPerRead="2147483647"
                    maxNameTableCharCount="2147483647" />
      <reliableSession ordered="true" inactivityTimeout="00:10:00" enabled="false" />
      <security mode="Message">
        <transport clientCredentialType="Windows" proxyCredentialType="None" realm="" />
        <message clientCredentialType="Windows"
                 negotiateServiceCredential="true"
                 algorithmSuite="Default"
                 establishSecurityContext="true" />
      </security>
    </binding>
  </wsHttpBinding>
</bindings>



<system.serviceModel>
<behaviors>
  <serviceBehaviors>
    <behavior name="AdminCentral.Business.Web.Service1Behavior">
      <serviceMetadata httpGetEnabled="true" />
      <serviceDebug includeExceptionDetailInFaults="false" />
    </behavior>
  </serviceBehaviors>
</behaviors>
<bindings>
  <wsHttpBinding>
    <binding name="WSHttpBinding_Config"
             closeTimeout="00:10:00"
             openTimeout="00:10:00"
             receiveTimeout="00:10:00"
             sendTimeout="00:10:00"
             bypassProxyOnLocal="false"
             transactionFlow="false"
             hostNameComparisonMode="StrongWildcard"
             maxBufferPoolSize="2147483647"
             maxReceivedMessageSize="2147483647"
             messageEncoding="Mtom"
             textEncoding="utf-8"
             useDefaultWebProxy="true"
             allowCookies="false">

      <readerQuotas maxDepth="2147483647"
                    maxStringContentLength="2147483647"
                    maxArrayLength="2147483647"
                    maxBytesPerRead="2147483647"
                    maxNameTableCharCount="2147483647"/>

      <reliableSession ordered="true" inactivityTimeout="00:10:00" enabled="false"/>
      <security mode="Message">
        <transport clientCredentialType="Windows" proxyCredentialType="None" realm=""/>
        <message clientCredentialType="Windows"
                 negotiateServiceCredential="true"
                 algorithmSuite="Default"
                 establishSecurityContext="true"/>
      </security>
    </binding>
  </wsHttpBinding>
</bindings>
<services>
  <service behaviorConfiguration="AdminCentral.Business.Web.Service1Behavior"
           name="AdminCentral.Business.Web.AdminCentralService">
    <endpoint address=""
              binding="wsHttpBinding"
              contract="AdminCentral.Business.Web.ICommandInvoker">
      <identity>
        <dns value="localhost" />
      </identity>
    </endpoint>
    <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
  </service>
</services>



推荐答案

为了使用自定义绑定您需要指定的 bindingConfiguration 客户端属性的的服务器端。像这样的:

In order to use the customized binding you need to specify bindingConfiguration attribute on the client and server side. Like this:

服务器端:

<endpoint address=""
          binding="wsHttpBinding"
          bindingConfiguration="WSHttpBinding_Config"
          contract="AdminCentral.Business.Web.ICommandInvoker">
  <identity>
    <dns value="localhost" />
  </identity>
</endpoint>



客户端:

<endpoint address="!!__!_server_address_!__!!"
          binding="wsHttpBinding"
          bindingConfiguration="WSHttpBinding_Config"
          contract="AdminCentral.Business.Web.ICommandInvoker">
</endpoint>

这篇关于WCF错误:客户端和服务绑定可能不匹配?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆