IIS到WCF的连接不会回调到IIS

时间:2019-04-23 18:29:56

标签: c# wcf

我有一个IIS服务器,该服务器需要通过netTcpBinding连接到运行WCF服务的远程计算机。我可以连接到WCF服务,但问题是回调不起作用。我从未使用过IIS到WCF,所以我认为问题是配置文件,但是我尝试查找示例代码对我需要的特定配置没有好运。我在IIS上的web.config文件服务片段看起来像这样。

<system.serviceModel>
      <bindings>
      <netTcpBinding>
        <binding name="NET.TCP_EndPoint" closeTimeout="00:01:00" openTimeout="00:01:00" sendTimeout="00:10:00" transactionFlow="false" transferMode="Buffered" transactionProtocol="OleTransactions" hostNameComparisonMode="StrongWildcard" maxBufferSize="2147483647" maxBufferPoolSize="0" maxReceivedMessageSize="2147483647">
          <readerQuotas maxDepth="32" maxStringContentLength="2147483647" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
          <reliableSession ordered="true" inactivityTimeout="00:10:00" enabled="true" />
          <security mode="Transport">
            <transport clientCredentialType="Windows" protectionLevel="EncryptAndSign" />
            <message clientCredentialType="Windows" />
          </security>
        </binding>
        <binding name="NET.Callback_EndPoint" closeTimeout="00:01:00" openTimeout="00:01:00" sendTimeout="00:10:00" transactionFlow="false" transferMode="Buffered" transactionProtocol="OleTransactions" hostNameComparisonMode="StrongWildcard">
          <readerQuotas maxDepth="32" maxStringContentLength="65536" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
          <reliableSession ordered="true" inactivityTimeout="00:10:00" enabled="true" />
          <security mode="Transport">
            <transport clientCredentialType="Windows" protectionLevel="EncryptAndSign" />
            <message clientCredentialType="Windows" />
          </security>
        </binding>
      </netTcpBinding>
    </bindings>
    <client>
      <endpoint address="net.tcp://123.45.67.89:8228/My_Service" binding="netTcpBinding" bindingConfiguration="NET.TCP_EndPoint" contract="MyWCFService.IWCFService" name="NET.TCP_EndPoint">
        <identity>
          <dns value="localhost" />
        </identity>
      </endpoint>
      <endpoint address="net.tcp://123.45.67.89:8230/My_CallbackService" binding="netTcpBinding" bindingConfiguration="NET.Callback_EndPoint" contract="MyWCFService.IWCFCallback" name="NET.Callback_EndPoint">

      </endpoint>
    </client>
  </system.serviceModel>

这些IP显然是伪造的。我继承了此配置文件,因此没有历史记录。几件事情看起来不对,但到目前为止,我还没有弄清楚需要更改什么。 My_Service调用的标识是localhost,这似乎是错误的,但是我可以连接到该服务并正常运行。回调部分没有身份,但是我读了一些Microsoft文档,如果缺少身份,它将自动填充信息。有人可以给我一些有关问题是什么以及应如何配置的线索吗?谢谢。

0 个答案:

没有答案