WCFexception处理

如果我的WCF服务中发生exception,那么将该错误传达给客户端的最佳方法是什么?

我应该在服务上登录并重新抛出soapexception吗? 或者我应该记录它并返回用户友好的消息?

使用强类型或非类型的FaultException是一种实现此目的的方法。 有一篇很好的文章简化WCF:使用exception作为故障来描述如何使用每个。 正如文章所指出的,根据服务的复杂性,您可以选择更简单的无类型FaultException并将exception信息传递给客户端。

我会记录它并返回FaultException 。 创建FaultException时,您可以将其中的用户友好消息传递回客户端。

exception应该是一个特殊事件,所以你不应该担心好消息。 如果只有exception才会出现exception,只需将其重新抛出为常规exception并进行记录即可。 应该不是问题。

但是,当exception作为正常过程的一部分发生时,返回好消息将是一个好主意。