尝试使用nettcpbinding使用wcf服务时出错

时间:2016-10-19 11:58:57

标签: c# web-services wcf nettcpbinding

我使用nettcpbinding创建了wcf服务(安全模式=“无”)。在IIS上托管它.. 它在浏览器中运行:

deck::pickCard();

当我使用服务引用使用此服务时,它可以工作。 但是,当我尝试使用渠道工厂消费时,它会给出错误:

  

这可能是因为合同不匹配(行动不匹配)   发送者和接收者之间)或绑定/安全性不匹配   发件人和收件人。检查发件人和收件人是否有   相同的合同和相同的约束(包括安全要求,   例如消息,传输,无)。

我不明白我的代码中有什么问题。

我的服务网络配置是:

net.tcp://localhost/NetTcptest/Service1.svc/mex

我的测试应用程序代码也是:

 <?xml version="1.0"?>
<configuration>
  <system.web>
    <compilation debug="true" targetFramework="4.0" />
  </system.web>
  <system.serviceModel>
    <!--All Bindings Information-->
    <bindings>
       <netTcpBinding>
        <binding name="netTcpBindingConfig">
          <security mode="None">
            <transport clientCredentialType="None" protectionLevel="None"/>
            <message clientCredentialType="None" algorithmSuite="Default"/>
          </security>
        </binding>
      </netTcpBinding>
    </bindings>
    <!--All Service Information-->
    <services>
      <service name="NetTcpTest.Service1" behaviorConfiguration="netTcpServiceBehavior">
        <endpoint address="NetTcpTest"
                  contract="NetTcpTest.IService1"
                  binding="netTcpBinding"
                  bindingConfiguration="netTcpBindingConfig"/>
        <endpoint address="mex"
                  binding="mexTcpBinding"
                  contract="IMetadataExchange"/>
        <host>
          <baseAddresses >
            <!--<add baseAddress ="http://localhost:8080"/>-->
            <add baseAddress ="net.tcp://localhost/Service1.svc"/>
          </baseAddresses>
        </host>
      </service>
    </services>
    <behaviors>
      <serviceBehaviors>
        <behavior name="netTcpServiceBehavior">
          <serviceMetadata httpGetEnabled="false" httpGetUrl=""/>
          <serviceDebug includeExceptionDetailInFaults="false"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
  </system.serviceModel>
  <system.webServer>
    <modules runAllManagedModulesForAllRequests="true"/>
  </system.webServer>
</configuration>

0 个答案:

没有答案