SOAPリクエストをサービスに渡すことで、他の関係者が消費するWCFサービスを作成しようとしています。クライアントは、対話中に発生する可能性のある一連の FaultExceptions を処理するよう私に要求します。
これには、クライアントが SOAP リクエストの [wsa:To] 要素で不正な形式の Uri を送信した場合、つまりクライアントがたとえばリクエストを送信した場合に、次の内容が含まれている場合が含まれます。
<wsa:To>http//:this.is.invalid/address</wsa:To>
特定の FaultException をスローできるはずです。IDispatchMessageInspector を実装して、操作に到達する前に SOAP 要求をキャプチャしようとしましたが、クライアントが送信した要求に上記の例のように不適切な Uri が含まれている場合、AfterReceiveRequest が呼び出されないため、このタイプのエラーを処理できません。
WCF サービスのトレース ログを有効にするまで、エラーを見つけることができませんでした。
System.UriFormatException、System、Version=4.0.0.0、Culture=neutral、PublicKeyToken=b77a5c561934e089
<br><br>with the description <br><br>
例外を処理しています。例外の詳細: System.UriFormatException: 無効な URI: URI スキームが無効です。
問題は、この例外をコードのどこでどのようにキャッチできるかということです。
前もって感謝します、