4

ASP.NET ASMX サービスが例外をスローすることがあります。ただし、global.asax Application_Error メソッドはそれらをキャッチしていないようです。問題は、これらの例外をキャッチしてログに記録するようにグローバル エラー ハンドラーを構成する方法です。

4

3 に答える 3

2

ASMX Web サービスの基本的な問題 (問題ではありません) は、サービス レイヤーの背後にある例外が SOAP 例外としてクライアントにスローされることです。SOAP 例外をキャッチし、そこで内部例外を探す必要があります。

より適切でクリーンなアプローチは、アプリケーションに SOAP ハンドラーを実装することです。これを介して SOAP 例外をシリアル化し、クライアント エンドで逆シリアル化します。このようにして、.net フレームワークではなく、例外フローを完全に制御できます。

HTH

于 2008-11-19T18:29:59.813 に答える
0

例外をスローしているのは ASMX または AJAX JavaScript ですか?

Javascript の場合は、例外処理を JS に記述し、それをサーバーにプッシュして、エラー データストアで追跡する必要があります (おそらく Web サービスへの別の呼び出しを介して)。

それが ASMX の場合は、おそらく Application_Error に引っ掛かりますが、ASMX は XML または JSON を返すため、探していない限り、必ずしも UI に表示されるとは限りません。

于 2008-10-14T13:19:19.133 に答える
0

クライアント側 I サービスへの呼び出しを JavaScript でラップするだけです。サーバー側では、エラーはサーバーログに. http 500 エラー

于 2008-10-14T13:23:31.573 に答える