ASP.NET Web サービス でも ASP.NET Web アプリケーションと同じように、Global.asax の Application_Error イベントで例外をハンドルできると思っていたらできなかったので回避策をメモ 何故ハンドル出来ないか? ここによると、 Web サービスの HttpHandler は、Web サービスの実行中に発生した例外を処理し、その例外を Application_Error イベントを呼び出す前に SOAP 違反に変換します。 と、いうことらしい。 例外をハンドルするためには? SOAP 拡張機能を作成し、グローバル例外ハンドラで Web サービスの例外を処理します。 と、いうことらしい。具体的にはここを参考に、SoapExtension のサブクラスを作成し、Web.config ファイルでSoap 拡張機能を指定すれば良い。 Soap 拡張機能