1

アクションにJSONPOSTされたMVC3アプリケーションがあります。すべて正常に動作しますが、生のインバウンドJSON BLOB(または送信されている他のもの)のログ記録を開始する必要があります。具体的には、ターゲットアクションに到達する前に失敗したリクエストをキャプチャして、POSTされているデータの構造やコンテンツの問題を分析できるようにします。

このようなことはMVC3で可能ですか?

4

2 に答える 2

1

サーバーに来るすべてのものを分析したい場合は、HTTPモジュールの使用を検討してください:http://msdn.microsoft.com/en-us/library/ms227673.aspx

HTTPモジュールはクラスであり、既存のリクエストフローに追加のアクションを添付できます。コードをBeginRequestイベントに添付して、コントローラーに到達しない場合でも、リクエストの詳細をログに記録できます。

public class HelloWorldModule : IHttpModule {
    // In the Init function, register for HttpApplication 
    // events by adding your handlers.
    public void Init(HttpApplication application)
    {
        application.BeginRequest += 
            (new EventHandler(this.Application_BeginRequest));
    }

    private void Application_BeginRequest(Object source, 
         EventArgs e)
    {
        //Do something with HttpContext.Current.Request here
    } 
}
于 2012-05-28T09:36:03.860 に答える
0

なぜあなたはそれを自分でやりたいのですか。非常にうまく機能するオープンソースソリューションがいくつかあります。最も有名なのはおそらくlog4netで、次のリストは基本的にHTTPモジュールであるelmahです。

于 2012-05-28T09:46:18.733 に答える