4

.NET 試験で、この質問に遭遇しました。

アプリケーションで未処理の例外をキャッチするために使用できるのは、次のうちどれですか?

  • サーバーエラー
  • Page_Error
  • アプリケーションエラー
  • Response_Error
  • OnError イベント

私はそのApplication_Errorを知っていますが、知りたいのは他のものです。いくつかのGoogle検索で、OnErrorを使用してエラーをキャッチできることがわかりました。それでも私はそれについて確信が持てません。未処理の例外をキャッチする他の方法を教えてください

4

1 に答える 1

8

不明なエラーをキャッチする正しいポイントはApplication_Error.

ページで OnError をキャプチャすることを避け、システムがそれを Application_Error に転送できるようにします。これは、ページの制御が失われているためです。エラー ページに転送しない場合、他に何ができますか? - 単にリロードしようとすると、スタック オーバーフローを引き起こす可能性のあるクローズ ループに陥るという問題があります。

私の経験から、ページOnErrorを使用してエラーを処理しようとすると問題が発生し、グローバルメモリを解放する必要がある場合、またはページでエラーが発生した場合にのみ使用します。

要約すると、try/catch ブロック内ですべてのエラーをキャッチして、ユーザーにメッセージを送信するか、または単にこの問題に対処し、未知のエラーをグローバル キャッチャーに記録して修正させます。未知のエラーは、プログラムの実際の制御を失うものであり、実際には、それを予測していないため、何をすべきかわかりません。ログに記録して、次回のために修正してください

エラーの詳細 : ASP.NET アプリケーションで「一般的なエラー」ページを作成して、そのページ自体を提供するときにトリガーされたエラーを処理するにはどうすればよいですか?

于 2012-06-10T12:03:02.930 に答える