C#Web服务客户端线程正在中止

时间:2011-06-28 19:05:40

标签: c# wcf web-services

在这个机会中,当我尝试多次调用Web服务方法时,我遇到了一个非常奇怪的问题。由于某些原因,在几次调用后,我得到以下异常。线程正在中止,这是该例外的痕迹:

at System.Net.Connection.SyncRead(HttpWebRequest request, Boolean userRetrievedStream, Boolean probeRead)
at System.Net.Connection.PollAndRead(HttpWebRequest request, Boolean userRetrievedStream)
at System.Net.ConnectStream.PollAndRead(Boolean userRetrievedStream)
at System.Net.HttpWebRequest.EndWriteHeaders(Boolean async)
at System.Net.HttpWebRequest.WriteHeadersCallback(WebExceptionStatus errorStatus, ConnectStream stream, Boolean async)
at System.Net.ConnectStream.WriteHeaders(Boolean async)
at System.Net.HttpWebRequest.EndSubmitRequest()
at System.Net.HttpWebRequest.CheckDeferredCallDone(ConnectStream stream)
at System.Net.HttpWebRequest.GetResponse()
at System.Web.Services.Protocols.WebClientProtocol.GetWebResponse(WebRequest request)
at System.Web.Services.Protocols.HttpWebClientProtocol.GetWebResponse(WebRequest request)
at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)

这在我的生产环境中发生,当我尝试在我的开发人员测试环境中重现该错误时,它正常工作,所以我真的不知道这个调用发生了什么问题。

你可以给我一个建议,以解决这个问题。

提前感谢。

1 个答案:

答案 0 :(得分:0)

我将在服务器上启用WCF跟踪日志记录,并在发生错误后检查服务日志。见这里:http://msdn.microsoft.com/en-us/library/aa702726.aspx

如果/ WCF堆栈中出现错误,在应用程序代码之外,如序列化和端点错误,则最终在服务日志中。


编辑:

另外,我认为您提供的错误和堆栈跟踪来自客户端的角度。服务器上可能存在异常导致服务器无法正确回复客户端,因此客户端出错。您应该在服务器上查找此问题的根本原因。