0

もともと WSE 用に作成されたフレームワークを WCF に適応させようとしています。フレームワークは、腸の奥深くから s をスローすることがあります。これをキャッチして、WCF フレームワークが処理するオブジェクトにSoapException変換したいと考えています。FaultException

このフレームワークの既存のクライアントが機能し続けるために<detail>は、SOAP 障害メッセージのフィールドが正確にフィールドにあるものである必要がありSoapException.Detailますが、これを達成する方法が見つかりません。MSDN のすべてのドキュメントは、シリアル化された詳細オブジェクトの使用を対象としていますが、これは私にとってはうまくいきません。アクター、コード、および詳細フィールドを元の SOAP 例外から保持SoapExceptionするFaultExceptionorオブジェクトに強制する方法はありますか?FaultException<T>

4

1 に答える 1

1

はい、間違いありませんが、あなたの質問に基づいて、あなたの状況でこのオプションを検討して排除したかどうかはわかりません.

カスタム WCF エラー ハンドラーを使用して、割り当てプロセス (HandleFault メソッドまたは ProvideFault メソッド) に含まれるシリアル化または逆シリアル化なしで、フォールト例外の Detail フィールドを任意の値に設定できます。http://wcfpro.wordpress.com/2010/11/18/wcf-extensions-error-handler/、http://wcfpro.wordpress.com/2011/01/04/catching-the-real-exception/を参照してください、およびhttp://blogs.msdn.com/b/pedram/archive/2008/01/25/wcf-error-handling-and-some-best-practices.aspxでこれを行います。

于 2011-03-31T14:38:50.883 に答える