当我有aspNetCompatibilityEnabled="true“和返回void的服务方法时,我会在客户机上得到以下错误。向该方法添加非空返回值将使错误消失。关闭aspnet兼容性也会使问题消失。
The server did not provide a meaningful reply; this might be caused by a contract mismatch, a premature session shutdown or an internal server error.我的网站的web配置包含以下内容:
<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
<behaviors>
<serviceBehaviors>
<behavior name="">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>有没有人想过为什么会发生这种事?如果没有,是否有人知道如何打开可能有帮助的附加日志记录或跟踪?我如何判断这是否是“过早的会话关闭”?
服务器端代码执行时不会出错。此问题发生在服务方法完成和响应返回客户端之间。
请不要建议关闭aspnet兼容性作为解决方案。出于各种原因,我需要能够在我的服务中访问HttpContext.Current。
发布于 2012-01-31 10:17:46
您可以通过遵循此链接启用跟踪。
您还可以发布您的服务类框架和与其相关的配置条目以及您试图调用服务的客户端代码。这将有助于更容易地查明问题。
https://stackoverflow.com/questions/9070591
复制相似问题