3

Castle MonoRail と ELMAH を使って成功した人はいますか?

ユーザーにわかりやすいエラー メッセージを表示するために多くの Resuces を使用していますが、これを行うと、MonoRail レスキューが例外をインターセプトするため、ELMAH まで例外が発生することはありません。

理想的には、ユーザーにレスキューを確認してもらいたいのですが、例外が ELMAH に記録されるようにします。

アイデア/ポインタはありますか?

乾杯、

ジェイ。

4

2 に答える 2

3

Macka が投稿したリンクを見て、この単純なモノレール例外ハンドラーを作成しました。

public class ElmahExceptionHandler : AbstractExceptionHandler {
    public override void Process(IRailsEngineContext context) {
        ErrorSignal.FromCurrentContext().Raise(context.LastException);
    }
}

次に、web.config の monorail セクションに登録しました。

<monorail>
    <extensions>
        <extension type="Castle.MonoRail.Framework.Extensions.ExceptionChaining.ExceptionChainingExtension, Castle.MonoRail.Framework"/>
    </extensions>
    <exception>
        <exceptionHandler type="MyNamespace.ElmahExceptionHandler, MyAssembly"/>
    </exception>
...
</monorail>

以上です。

于 2009-03-06T19:17:25.773 に答える
2

Google グループにも投稿した後、Atif が私を正しい方向に向けてくれたようです。

ELMAH のエラー シグナリングを調べることをお勧めします。これは、例外が処理/飲み込まれている場合でも、ELMAH のパイプラインを介して例外を渡したいシナリオ向けに設計されています。エラー シグナリングを開始するためのヒントを次に示します。

-アティフ

于 2008-11-10T11:07:08.737 に答える