我试图用 netTcpBinding
而不是 wsHtpBinding
来获得我的周转基金服务,但我似乎无法使其发挥作用。
我添加了对 IIS 7.5 有约束力的 < code> net. tcp , 但状态未知( < em>, 以及当我同时删除 http 绑定时, 它会通过网站插入一个大红色 X, 我必须在我再次访问任何设置 < / em > 之前添加一个新的 http 绑定 ) 。 我已经在这里和在 Google 上查看了, 但我只能找到两到三个没有真正解决方案的关于此问题的文章 。
我有的是:
- WAS service running, and also the Net.* services.
- Added net.tcp in Advanced Settings in IIS.
- WCF non-http is installed.
似乎有一个 TCP 听众正在运行, 正如它从网络统计中显示的, 它正在我的指定端口收听: 809, 我也收到防火墙讯息(<他们也试图解除防火墙/防毒病毒, 但并没有帮助 < / em> ) 。
WCF 测试客户端导致错误 :
错误: 无法从 Net. tcp://localhost: 809/ My servicice. svc 获得元数据
我的Web.config(主要复制自 MSDN, 适当布局请在此查看 < a href="http://pastebin.com/ Ru8p0T9N" rel=“ nofollow” >http://pastebin.com/ Ru8p0T9N ):
<services>
<service behaviorConfiguration="MyBehavior" name="WCFService.MyService">
<endpoint address="" binding="netTcpBinding" bindingConfiguration="Binding1" name="MyServiceEndpoint" contract="WCFService.MyService">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="mexTcpBinding" bindingConfiguration="" name="MyServiceMexTcpBidingEndpoint" contract="IMetadataExchange" />
<host>
<baseAddresses>
<add baseAddress="net.tcp://localhost:809/MyService.svc" />
</baseAddresses>
</host>
</service>
</services>
<behavior name="MyBehavior">
<serviceMetadata httpGetEnabled="false" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
<netTcpBinding>
<binding name="Binding1"hostNameComparisonMode="StrongWildcard"sendTimeout="00:10:00"maxReceivedMessageSize="65536"transferMode="Buffered"portSharingEnabled="true">
<security mode="Message">
<transport clientCredentialType="None" />
<message clientCredentialType="None" />
</security>
</binding>
</netTcpBinding>
wsHttpBinding
与 net.tcp
运作良好,但与 net.tcp
无关。 我在 Web 中尝试了多个不同的设置。 config from 多个来源,但我最后还是遇到同样的问题。