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


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

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

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

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

    1. 配置文件实现

    <bindings>
          
    <netTcpBinding>
            
    <binding>
              
    <security mode="None">
              
    </security>
            
    </binding>
          
    </netTcpBinding>
    </bindings>

      

    2. 编码实现

    NetTcpBinding binding = new NetTcpBinding() 

           ReaderQuotas 
    = new XmlDictionaryReaderQuotas()
           {
                   MaxStringContentLength 
    = 2147483647 
           },
           Security 
    = new NetTcpSecurity() 
           { 
                   Mode 
    = SecurityMode.None
           } 
    };    
  • 相关阅读:
    Python学习
    shell 脚本收藏
    无限级分类接口
    php 过滤多维数组中值为空的字段
    逆波兰表达式3(后缀表达式求值)
    [数据结构]之队列
    最大公约数和最小公倍数
    暗时间阅读笔记
    android判断文件是否是图片文件的方法
    android从assets读取文件的方法
  • 原文地址:https://www.cnblogs.com/zengen/p/2106365.html
Copyright © 2020-2023  润新知