WCF 异常处理
Posted
技术标签:
【中文标题】WCF 异常处理【英文标题】:WCF Exception Handling 【发布时间】:2011-04-28 02:22:39 【问题描述】:如果我的 WCF 服务发生异常,将该错误传达给客户端的最佳方式是什么?
我应该将它登录到服务并重新抛出一个肥皂异常吗? 或者我应该记录它并返回一条用户友好的消息?
【问题讨论】:
【参考方案1】:使用强类型或非类型的 FaultException 是实现此目的的一种方法。 有一篇很棒的文章 Simplifying WCF: Using Exceptions as Faults 描述了如何使用它们。正如文章所指出的,根据服务的复杂性,您可以选择更简单的无类型 FaultException 并将异常信息传递给客户端。
【讨论】:
此链接已损坏。 嗯,我的帖子已经 6 年了...是的,链接已损坏,但它可以在存档中找到:web.archive.org/web/20160323202540/http://www.olegsych.com/2008/…【参考方案2】:我会记录它并返回一个FaultException。创建 FaultException 时,您可以将其中的用户友好消息传递回客户端。
【讨论】:
【参考方案3】:异常应该是异常事件,因此您不必担心好消息。如果异常仅在您有错误时发生,只需将其作为通用异常重新抛出并记录。应该不是问题。
但是,当异常作为正常流程的一部分发生时,返回好的消息将是一个好主意。
【讨论】:
以上是关于WCF 异常处理的主要内容,如果未能解决你的问题,请参考以下文章