テストDB(ELmah_Errorテーブルと3つのストアドプロシージャを作成しました)でELMAH sqlスクリプトを実行し、Nugetを使用してMVCアプリケーションでELMAHを構成しました。SQL Server 2008 R2を使用しているASP.NET MVC 4のELMAH
代わりに私は、SQL Serverに例外を記録したい、指定されたように私は、web.configファイルを変更し、私は
http://mysite/elmah.axd
に例外をログに記録することができるよ。しかし。
は私が
public class ElmahHandleErrorAttribute : System.Web.Mvc.HandleErrorAttribute
{
public override void OnException(System.Web.Mvc.ExceptionContext context)
{
LogException(e);
}
private static void LogException(Exception e)
{
// Call to Database and insert the exception info
}
}
最後のステップがあったことを達成するために、クラスの下に追加する:それはすべての例外をログに記録するか、私が何かをしないのですELMAHを使用する正しい方法
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new ElmahHandleErrorAttribute());
}
ですか?
既存のelmah設定はどうですか?エルマは必要なテーブルを作成しますか? – Rahatur
elamhは既存のテーブルを自動的に作成しません。ただし、データベースセクションのhttps://code.google.com/p/elmah/wiki/Downloadsからデータベースの種類とバージョンのスクリプトをダウンロードできます。 –
私はconnectionStringName = ""という値になるのは、接続文字列自体ではなく、接続文字列名(web.config セクションで定義されている)だと思います。 –
Bern