2011-04-01 83 views
5

我有進行簡單的操作簡單的WCF服務:何時使用WCF故障異常

[OperationContract] 
DoSomething (Stuff input); 

如果發生異常內DoSomething那麼FaultException將被退回。鑑於所有客戶需要知道是否出現問題,您是否會說在這種情況下不需要定義FaultException

+0

處理異常和故障 - http://msdn.microsoft.com/en-us/library/ms789039.aspx – 2011-05-10 08:52:17

回答

4

返回FaultException總是一個好習慣,因爲如果不這樣做,通道將出現故障並且不能再次使用。

需要發送到客戶端採取的配置(服務行爲)什麼樣的信息的決定:

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

其實我始終貫徹在服務IErrorHandler行爲捕獲所有異常並返回FaultException<T>所以我不必在我的所有行動中都這樣做。