.NETAppDomain.AssemblyLoad
イベントは、そのイベントハンドラー内でスローされた例外をキャッチし、アセンブリのロードをトリガーした呼び出し元にそれらを伝播しないようです(例Assembly.LoadFile()
)。
私の最初の質問は、なぜこれがすべての例外をキャッチするのかという動作が存在するのですか?Microsoftは一般に、例外が常にBCLで伝播するようにすることについてかなり厳格です。
私の2番目の質問ですが、この動作をオフにする方法はありますか?
背景:アセンブリが読み込まれるときにアセンブリをスキャンし、何らかの規則に準拠していることを確認する必要があります。そうでない場合は、例外をスローする必要があります(そして、アセンブリの負荷をトリガーする可能性のある複数のメカニズムによって、より高いレベルでキャッチされます)。
注:この質問「AppDomain.AssemblyLoadイベントから例外をスローする」はすでに見つかりましたが、これは重複していません。私の質問は、その質問の結論から論理的に続きます。