错误由于EndpointDispatcher的AddressFilter不匹配,带有To''的消息无法在接收方处理

时间:2018-08-07 11:40:25

标签: c# wcf

我阅读了以下问题:

但是那些还不能解决我的问题。

我有一个Web服务:Service1和应用程序App1,该应用程序通过端口8089连接到Service1

App1

的配置
<system.serviceModel>
        <bindings>
          <wsHttpBinding>
            <binding name="WSHttpBinding_IService1" maxBufferPoolSize="327680" maxReceivedMessageSize="104857600" sendTimeout="00:01:30">
              <security mode="Transport" />
              <readerQuotas maxArrayLength="327680" maxBytesPerRead="327680" maxDepth="327680" maxNameTableCharCount="327680" maxStringContentLength="104857600" />
            </binding>
          </wsHttpBinding>
        </bindings>
        <client>

          <endpoint address="http://localhost:8089/" binding="wsHttpBinding"
                    bindingConfiguration="WSHttpBinding_IService1" contract="Service1Client.IService1"
                    name="WSHttpBinding_IService1">
            <identity>
              <dns value="localhost" />
            </identity>
          </endpoint>
        </client>
    </system.serviceModel>

Service1的配置:

<system.serviceModel>
    <bindings>
      <wsHttpBinding>
        <binding maxBufferPoolSize="327680" maxReceivedMessageSize="104857600">
          <security mode="None"/>
          <readerQuotas maxArrayLength="327680" maxBytesPerRead="327680" maxDepth="327680" maxNameTableCharCount="327680" maxStringContentLength="104857600"/>
        </binding>
      </wsHttpBinding>
    </bindings>
    <services>
      <service name="Service1.Service1">
        <endpoint address="" binding="wsHttpBinding" contract="Service1.Contract.IService1">
          <identity>
            <dns value="localhost"/>
          </identity>
        </endpoint>
        <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
        <host>
          <baseAddresses>
            <add baseAddress="http://localhost:8089/"/>
          </baseAddresses>
        </host>
      </service>
    </services>
    <behaviors>
      <serviceBehaviors>
        <behavior>
          <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true"/>
          <serviceDebug includeExceptionDetailInFaults="False"/>
          <serviceThrottling maxConcurrentCalls="200"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" minFreeMemoryPercentageToActivateService="0"/>
</system.serviceModel>

我遇到错误:

  

带有To'http://localhost:8089/'的消息无法在处处理   接收器,因为在   EndpointDispatcher。检查发送方和接收方的   EndpointAddresses同意

1 个答案:

答案 0 :(得分:0)

确保合同参考与服务器版本相同。