2009-09-25 103 views
7

WCF - net.tcp没有端点监听:// myserver:9000/SearchQueryService/Querier.svc可以接受消息。WCF - net.tcp://..../Querier.svc没有端点监听,可以接受该消息

我对IIS应用程序

启用Windows防火墙的协议的net.tcp是关闭

的net.tcp绑定端口设置为9000整个IIS应用程序。

我的web.config是很标准:

<system.serviceModel> 
    <diagnostics> 
     <messageLogging logMalformedMessages="true" logMessagesAtServiceLevel="false" 
     logMessagesAtTransportLevel="true" /> 
    </diagnostics> 
    <services> 
     <service behaviorConfiguration="SearchQueryServiceBehavior" 
     name="Search.Querier.WCF.Querier"> 
     <endpoint address="mex" binding="mexHttpBinding" name="mexHttpEndpoint" 
      contract="IMetadataExchange" /> 
     <endpoint binding="netTcpBinding" bindingConfiguration="" 
      name="netTcpEndpoint" 
      contract="Search.Querier.WCF.IQuerier" /> 
     </service> 
    </services> 
    <behaviors> 
     <serviceBehaviors> 
     <behavior name="SearchQueryServiceBehavior"> 

      <serviceMetadata httpGetEnabled="true"/> 

      <serviceDebug includeExceptionDetailInFaults="false"/> 
     </behavior> 
     </serviceBehaviors> 
    </behaviors> 
    </system.serviceModel> 

而这一设置工作在一台服务器上而不是其他... 可能是什么问题呢?

这两个服务器,工作和非工作的一个运行IIS7。 唯一的区别是工作箱是Vista64 Sp2,非工作箱是W2k864。

回答

4

我认为您在网站的高级设置中的“启用协议”列表中缺少net.tcp。

0

您是否在w2k864机器上安装了.net 3.5?安装之后,你运行了aspnet_iisreg吗?

检查IIS中的asp.net设置,并确保它被设置为使用2.0

你能提供的信息吗?

也尝试使用您的ip而不是主机名。例如192.168.1.100而不是myserver

+0

是的,一切都已完成.... – Matt 2009-09-25 20:55:34

0

当您浏览到服务(http://myserver/SearchQueryService/Querier.svc)时,您是否收到任何错误消息?

我还注意到您的客户端正在调用端口9000上的net.tcp端点。此配置是否与IIS net.tcp配置相匹配?在默认配置中,对您的服务的调用应该指向net.tcp://myserver/SearchQueryService/Querier.svc

相关问题