2012-02-21 40 views
3

我有一个RESTful WCF服务(.NET 3.5),它具有一个函数,该函数应该通过与我提供的搜索条件匹配来返回患者详细信息列表。我面临的一个问题是,如果我提供的搜索标准可以返回一个患者的详细信息,它就可以正常工作;但是当我提供一个返回多个患者详细信息的搜索条件时,我收到一个错误“Connection 502 by peer 502”。我使用Fiddler进行测试,因为请求和响应都是JSON格式。在REST风格的Web服务中由对等体(502)重置的连接

以下是错误我得到:

<HEAD><TITLE>Connection reset by peer</TITLE></HEAD> 
<BODY BGCOLOR="white" FGCOLOR="black"><H1>Connection reset by peer</H1><HR> 
<FONT FACE="Helvetica,Arial"><B> 
Description: Connection reset by peer</B></FONT> 
<HR> 
<!-- default "Connection reset by peer" response (502) --> 
</BODY> 

我敢肯定它是在一个时间点,工作正常,当它返回了两个组的病人细节,但它突然停了下来,没有任何正当理由的工作。我已经使用运行状况监视启用了应用程序日志,它显示应用程序已启动并且没有错误。另一个功能是“登录”功能,效果很好。

回答

1

找出问题所在。我有IsRequired设置为true在响应类Data Member,这是给错误

4

我不确定解决方案,但有时如果您有包含非序列化类型的DataContract,WCF序列化错误可能会导致“通过对等方重置连接”。检查datacontract中的所有类型是否可序列化。

+0

谢谢,虽然我没有发现任何序列化问题;同时查看Data Contract部分,我发现响应类的Is Required设置为false。我刚刚删除了这些属性,问题似乎消失了! – Anupam 2012-02-21 11:19:28