最近调试WCF功能,遇到很奇怪的问题,折腾了一天,才解决了这个错误,现在分享给大家,防止大家走弯路,能省点儿时间。
原来是 netTcpBinding 时,出现报错信息
套接字连接已中止。这可能是由于处理消息时出错或远程主机超过接收超时或者潜在的网络资源问题导致的。本地套接字超时是“00:00:09.9970000”。
mscorlib
修改为 basicHttpBinding 时,出现如下报错信息
接收对 http://localhost:8888/DotNet.Service/WorkFlowCurrentService/ 的 HTTP 响应时发生错误。这可能是由于服务终结点绑定未使用 HTTP 协议造成的。这还可能是由于服务器中止了 HTTP 请求上下文(可能由于服务关闭)所致。有关详细信息,请参见服务器日志。
mscorlib
服务器上的方法都可以正常被调用,但是客户端会出错,类似的程序以前写的都正常,就3个方法不正确,其他程序的返回数据都正常,不知道问题出在哪里了。
原来的问题是,WCF 返回 DataTable 时,需要有表名才可以,这个修正后居然就没错了,怎么会是这样呢,耗费了我接近一天才找出来。
最近改进程序支持WCF遇到以上问题,怎么查配置都问题不大,程序写得也于其他程序完全一样,但是始终是出现这个问题,让人恼火一些。
本文转自 jirigala 51CTO博客,原文链接:http://blog.51cto.com/2347979/1199869,如需转载请自行联系原作者