WCF中提示SocketException的两种解决办法

使用了一段时间的WCF,对于诡异的Socket断开异常有一点经验,分享给大家。

1.如果是在Windows 2003 Server操作系统+IIS6部署WCF服务,返回IList参数,出现Socket断开异常,调试表现为:
System.ExecutionEngineException,此为框架的一个BUG,可以安装KB981574补丁解决。

参考:
http://connect.microsoft.com/wcf/feedback/details/433569/wcf-throws-an-executionengineexception-when-returning-an-array-as-ilist-t

http://support.microsoft.com/kb/971030

下载:
http://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=33154

2. 如果返回结果中的数据量较大,则可能是由配置参数太小引发,例如maxItemsInObjectGraph和maxReceivedMessageSize设置太小,调整相应的参数即可。

参考:

http://stackoverflow.com/questions/2384132/system-servicemodel-communicationexception-on-large-message-size

作者:协思
出处:http://zeeman.cnblogs.com/
QQ交流群:32972862

原文地址:https://www.cnblogs.com/zeeman/p/2139471.html