【WCF】套接字连接已中止。这可能是由于处理消息时出错或远程主机超过接收超时或者潜在的网络资源问题导致的。本地套接字超时是“00:00:59.6010000”

如果您遇到如题所示异常提示,恭喜您找对地方了!

出现这种问题一般是由WCF的安全机制导致的,这种情况一般只会出现在NetTcpBinding的情况下,你会发现将WCF服务与本机置于同一台机上,无论客户端采用哪种方式(iis,VS自带的WEB服务器、ConsoleApplication、WinForm),都不会有问题,但是当把WCF服务部署在局域网内某台机器上,然后通过客户端去访问就有问题了,而出问题的情况让人很莫明其妙(IIS访问时出现如题的异常,而VS自带的WEB服务器、ConsoleApplication、WinForm都不会出现异常)。

针对这种情况,解决方法如下:

注:以下的解决办法为禁用WCF连接安全限制,当然你可以设置该Mode为其它类型,同时设置安全验证方式等

1. 配置文件实现
[code lang=”xml”]
     
       
         
         

       

     

[/code]
2. 编码实现
[code lang=”csharp”]NetTcpBinding binding = new NetTcpBinding()
{
       ReaderQuotas = new XmlDictionaryReaderQuotas()
       {
               MaxStringContentLength = 2147483647
       },
       Security = new NetTcpSecurity()
       {
               Mode = SecurityMode.None
       }
};[/code]

本博客所有文章如无特别注明均为原创

如果觉得对你有帮助,可以通过下方打赏对作者表示鼓励

本文采用知识共享署名-非商业性使用-相同方式共享

如若转载,请注明出处:https://www.fangsi.net/511.html

(4)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2013年9月5日 12:29
下一篇 2013年9月9日 09:15

相关推荐

发表评论

登录后才能评论