2013-05-13 43 views
3

我正試圖在WCF服務中實現異常處理。 我想把這個異常拋給客戶端,這樣它就可以被記錄和處理。客戶端中的FaultException處理?

我不知道我寫的代碼是對還是錯。 這隻會讓我「faultexception是由用戶代碼未處理」 我應該如何解決,所以我可以處理我的客戶端異常?

代碼在WCF的服務:

try 
{ 

} 
catch (FaultException fex) 
{ 
    throw fex; 
} 
catch (Exception ex) 
{ 
    throw ex; 
} 

代碼在客戶端:

try 
{ 

} 
catch (FaultException fex) 
{ 
    Logger.AddExceptionToDb(fex); 
} 
catch (Exception ex) 
{ 
    Logger.AddExceptionToDb(ex); 
} 

回答

6

你應該申請[FaultContract(YourFaultClass) 屬性方法,該方法將拋出故障異常。

[OperationContract] 
    [FaultContract(typeof(YourFaultClass))] 
    void Foo(int par1); 

如何從服務扔:

throw new FaultException<YourFaultClass>(new YourFaultClass()); 

更多的幫助來看看:http://msdn.microsoft.com/en-us/library/cc949036.aspx

+0

如何異常處理在客戶端**的FaultException **?任何樣品? – Kiquenet 2015-09-29 13:14:25

相關問題