2013-05-13 1 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); 

어떻게 서비스에서 그것을 던져 : ** 오류 예외 **에 대한 클라이언트의 http://msdn.microsoft.com/en-us/library/cc949036.aspx

+0

어떻게 예외 처리 : 더 도움

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

은 좀 있나요? 어떤 표본? – Kiquenet