同社のシステムの例外処理の 1 つを調べたところ、いくつか興味深いことがわかりました。
ほとんどのコード ブロック (すべてではないにしても) は try/catch ブロック内にあり、catch ブロック内で新しい BaseApplicationException がスローされています。これはエンタープライズ ライブラリから来ているようです。これを行うメリットが見当たらないので、ここで少し困っています。(例外が発生するたびに別の例外をスローする) しばらくシステムを使用している開発者の 1 人は、そのクラスが例外の発行 (メールなどの送信) を担当しているためだと言いましたが、彼はそれについてあまり確信が持てませんでした。しばらくコードを調べてみたところ、環境に関する情報を収集し、それを公開するだけであると確信しています。
私の質問は次のとおりです。もしそうなら、なぜですか?メリットは何ですか?
私の個人的な意見では、HttpModule を使用し、Application イベントの Error イベントにサインアップし、モジュール内で必要なことを行う方がはるかに簡単です。この道を行くとしたら、何かを逃すでしょうか?欠点はありますか?
あなたの意見は大歓迎です。