私はSilverlightクライアントからWCFサービスを呼び出しているため、すべての呼び出しを非同期にしています。非同期WCF呼び出しでFaultExceptionsを処理する最適な方法は何ですか?
WCFサービスがExceptionFaultを返すと、エラーオブジェクトが完成し、イベントハンドラの引数に移入ます...
proxy.UpdateCompleted += (o, e) =>
{
if(e.Error != null)
.... do something
}
FaultExceptionにe.Errorを変換するための最善のアプローチは何ですか?
if (e.Error is FaultException<InvalidOperationFault>)
{
var fault = e.Error as FaultException<InvalidOperationFault>;
... do something
}
または
try
{
throw e.Error
}
catch(FaultException<InvalidOperationFault> fault)
{
... do something
}
またはあなたがより良いものを提案することができますか?
このテクニックはスタックトレースを変更して、例外がスロー'。 –