2012-05-10 6 views
-1

私はascxがベースascxから継承するc#asp.netプロジェクトを持っています。このベースascxでは、エラーを記録するpage_errorメソッドを追加したいと思います。ページを壊さずにすべてのページレベルのエラーをキャッチ

派生クラスの何かが壊れた場合、null参照例外が発生した場合、ユーザーにエラー画面は表示されません。効果的には、すべてのコード行が自分自身のtry catch内にカプセル化されているように動作させたいので、このnull ref例外が発生した場合、その行のエラーを記録し、次の行にスキップして続行します。

これは可能ですか、これを実装するにはどうすればよいですか?

答えて

3

いいえ、これはできません。 UnhandledExceptionがスローされると、必然的にPage_Errorイベントが例外を受け取り、通常のページの実行が中断されます。一般的に、私はあなたがしようとしているのは悪い練習だと思います。私はその道を行くつもりはない。

+0

私は同意します。特にNullの参考例です。ヌル参照例外は、ほとんどの場合プログラマのバグです。バグ修正! – asawyer

+0

+1これは非常に悪いです。さまざまな混乱を招いたクラシックASP 'エラー再開時に'を思い出させる。 –

+0

悪い習慣を意味するものではありません。 :)私は失敗する可能性のある多くの独立した部品を持っているが、それらに頼らない他の部品の流れを中断したくないページがある。方法の束のために試してみましょうの束を投げるのではなく、私はこのルートについて疑問に思っていた。私はそれがクールだと思ったが、私はちょうど選択し、エラーログを必要とする方法を選択すると思います。答えをありがとう。 – JMD