一个项目需要用到推送的功能,就是服务器主动推送数据给多台客户机。于是采用了WCF的双工通讯netTcpBinding
写好的项目,在本机测试都没有问题。
如果放在局域网内测试,问题出来了;先是安全性问题,后面就是 套接字连接已中止。。。。。。。。。。。这一串问题了;
安全性问题:
<netTcpBinding>
<binding name="NewBinding" maxReceivedMessageSize="2147483647" transferMode="Buffered">
<readerQuotas maxStringContentLength="2147483647" maxArrayLength="12000000"/>
<security mode="None">
<transport clientCredentialType="None"></transport>
</security>
</binding>
</netTcpBinding>
这样设置就可以了
可对于 后面一个问题一直找资料都不行,找了很多资料,有的是说datatable没有加name,有的是说安全性问题,可我已经加了“<security mode="None">”这个了还是不行;
结果是因为少了一个配置属性:
<endpoint address="" binding="netTcpBinding" bindingConfiguration="NewBinding" contract="AssetWcfService.IMonitorLog">
</endpoint>
一加上去结果可以了。花了一个晚上的时间啊,真是坑爹啊。