0

我是 Elmah 的新手,正在考虑在项目中实施它。这将是一个 ASP.NET MVC + Umbraco + EF Web 项目,它将具有多个层(业务、DAL 等)。

我对 Elmah 的兴趣在于它处理未处理异常的能力。

但问题是它是否也处理来自其他层(服务、业务、DAL 等)或仅来自 Web 层(ASP.NET MVC)的未处理异常?

4

1 回答 1

2

ELMAH 处理返回给客户端的任何异常。这意味着如果您在 MVC 层或其他任何地方捕获它们,则不会记录在数据层中引发的异常。您通常不希望来自较低层的异常最终出现在客户端。

ELMAH 还支持通过 ErrorSignal 手动记录错误,如下所示:

try
{
    database.DoSomeStuff();
}
catch (SomeDatabaseException ex)
{
    Elmah.ErrorSignal.FromCurrentContext().Raise(ex);
}
于 2014-09-10T07:55:29.940 回答