19

私は ASP.NET MVC を初めて使用し、グローバルなエラー処理、ログ、およびレポート (電子メール経由) をセットアップするための最も簡単な方法を探しています。参考までに、私の ASP.NET MVC アプリは Azure で Web ロールとしてホストされていますが、Azure 固有のフックを使用しないようにしています。

ELMAH をインストールして構成することが、適切な最初のステップのようです。

NuGet を見ると、次のように表示されます。

  • ELMAH (「すぐに始めるための初期設定を備えた ELMAH...」)
  • Elmah.Contrib.Mvc ("...MVC プロジェクト内で使いやすさを追加するように設計されています...")
  • Elmah.MVC ("...MVC への簡単な統合...")

これらのパッケージのどれをインストールしますか?

編集:いくつかの実験の後、私はもっと混乱しています。デフォルトの MVC 4 アプリの上に 3 つのオプションをそれぞれインストールした後、プロジェクト ファイルを比較しました。Elmah.Contrib.Mvc も Elmah.MVC も elmah.1.2.2 パッケージを追加していないようです (基本的な ELMAH をインストールすると取得されます)。また、どちらのパッケージも<elmah>セクションを Web.config に追加しません。

それで...最初にELMAHをインストールしてから、「... MVC」パッケージの1つをインストールして、おそらく得られると思われる気の利いた改善を得る必要がありますか?

4

2 に答える 2

24

ELMAH - これは、mvc 固有のコードが含まれていないデフォルトの ELMAH パッケージです。ここで説明されていることを行わないと、ELMAH がコントローラーで発生したエラーを記録するとは思えず、アクセスできない可能性があります。 ELMAH ログページ

Elmah.Contrib.Mvc - これは、スタック オーバーフローの質問に対する ELMAHS の作成者の 1 人による回答に基づいた、特に MVC 向けの ELMAH の拡張です。

Elmah.MVC - これは上記のパッケージに似ていますが、ルートなどの mvc 機能のサポートがはるかに優れていると思います。インストールと構成も非常に簡単で、必要な多くの混乱を取り除きます。 ELMAH は、mvc プロジェクトで実行するときに必要とされないさまざまな部分を取り出します

著者の投稿を読んで、それがどのように機能するかをよりよく理解できます。

個人的には、最後のパッケージが使用するのに最適なパッケージであると考えています.2つの mvc パッケージのうち、最新で維持されているようです。

于 2013-03-23T04:52:25.907 に答える
2

Elmah の代わりに Elfar を使用することを検討してください。Elfar は Elmah に「触発された」ものですが、MVC 固有に設計されており、構成が非常に簡単です。

NuGet を開いて Elfar を検索するだけです。さまざまなパッケージが多数ありますが、一般的には、使用しようとしているテクノロジに適合するパッケージが必要です。私は Azure の Web ロールに詳しくありませんが、標準の Sql サーバーにアクセスできる場合は、Elfar.SqlClient を簡単に使用できます。

詳細はこちら:

https://github.com/stevenbey/elfar/wiki

于 2013-03-23T02:55:05.480 に答える