手动 Elmah 日志记录在 MVC 中无法正常工作
Manual Elmah Logging dosnt work properly in MVC
我使用 ELAMH 1.2 记录 MVC 5 中的错误。它适用于 404 500...HTTP 错误和控制器的捕获块。
public ActionResult Index()
{
Elmah.ErrorSignal.FromCurrentContext().Raise(new Exception("test"));
try
{
var a = 0;
var b = 1 / a;
}
catch(Exception e)
{
Elmah.ErrorSignal.FromCurrentContext().Raise(e);
}
return View();
}
我得到了这段代码的两个日志。
但它确实在静态 class 中工作,如下所示。 运行 ErrorSignal.FromCurrentContext().Raise(e);
.
时我没有得到任何异常
public static class FileUtility
{
public static string SaveSampleFile(HttpPostedFileBase file)
{
try
{
var b = 0;
var a = 1/b;
}
catch (Exception e)
{
ErrorSignal.FromCurrentContext().Raise(e);
return null;
}
}
}
没有错误日志 什么都没发生!
我在 class 库项目中调用没有任何 HttpContext 的 ELMAH 记录器时也看到了这个问题。
我使用旧的手动方法来解决这个问题:
Elmah.ErrorLog.GetDefault(null).Log(new Error(ex));
我使用 ELAMH 1.2 记录 MVC 5 中的错误。它适用于 404 500...HTTP 错误和控制器的捕获块。
public ActionResult Index()
{
Elmah.ErrorSignal.FromCurrentContext().Raise(new Exception("test"));
try
{
var a = 0;
var b = 1 / a;
}
catch(Exception e)
{
Elmah.ErrorSignal.FromCurrentContext().Raise(e);
}
return View();
}
我得到了这段代码的两个日志。
但它确实在静态 class 中工作,如下所示。 运行 ErrorSignal.FromCurrentContext().Raise(e);
.
public static class FileUtility
{
public static string SaveSampleFile(HttpPostedFileBase file)
{
try
{
var b = 0;
var a = 1/b;
}
catch (Exception e)
{
ErrorSignal.FromCurrentContext().Raise(e);
return null;
}
}
}
没有错误日志 什么都没发生!
我在 class 库项目中调用没有任何 HttpContext 的 ELMAH 记录器时也看到了这个问题。
我使用旧的手动方法来解决这个问题:
Elmah.ErrorLog.GetDefault(null).Log(new Error(ex));