我偶尔会遇到在 WCF 序列化过程中抛出应用程序异常的问题(在从我的 OperationContract 返回 DataContract 之后)。我收到的唯一(而且意义不大)的消息是
System.ServiceModel.CommunicationException : The underlying connection was closed: The connection was closed unexpectedly.
对内部异常没有任何洞察力,这使得在序列化过程中很难找出导致错误的原因。
有人知道跟踪、记录和调试这些异常的好方法吗?或者更好的是我可以捕获异常、处理它们并将定义的 FaulMessage 发送到客户端吗?
谢谢
最佳答案
如果您像这样配置您的服务行为,您应该得到内部异常:
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="YourServiceBehaviour">
...
<serviceDebug includeExceptionDetailInFaults="true" />
...
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
此外,您还可以启用跟踪。现在没有找到一篇好文章,但也许这可以让你开始:
http://developers.de/blogs/damir_dobric/archive/2009/03/24/using-of-wcf-trace.aspx
关于c# - 如何跟踪 WCF 序列化问题/异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2779757/