何时使用WCF故障异常

时间:2011-04-01 14:02:56

标签: c# .net wcf fault

我有一个简单的WCF服务,它执行一个简单的操作:

[OperationContract]
DoSomething (Stuff input);

如果DoSomething内发生异常,则会返回FaultException。鉴于所有客户都需要知道是否出现了问题,您是否会说在这种情况下无需定义FaultException

1 个答案:

答案 0 :(得分:4)

返回FaultException始终是一种好习惯,因为如果不这样做,频道将出现故障,并且无法再次使用。

决定需要将哪些信息发送到客户端的配置(在服务行为中):

         <serviceBehaviors>
                <behavior name="myName">
                     <serviceDebug includeExceptionDetailInFaults="true" />
       // ....

实际上,我总是在服务上实现IErrorHandler行为以捕获所有异常并返回FaultException<T>,这样我就不必在所有操作中执行此操作。