关于asp.net:elmah处理异常也是如此

关于asp.net:elmah处理异常也是如此

Does elmah handle caught exceptions as well

ELMAH是否记录了异常,即使它们没有冒泡到应用程序? 我想在发生异常时弹出消息并仍然记录异常。 目前我已经把所有东西都放在try catch块中并且吐出消息,但这变得乏味。


ELMAH已更新为支持名为Signaling的新功能。

这允许您按照自己的需要处理异常,同时仍将它们记录到ELMAH。

1
2
3
4
5
6
7
8
9
10
11
try
{
    int i = 5;
    int j = 0;
    i = i / j; //Throws exception
}
catch (Exception ex)
{
    MyPersonalHandlingCode(ex);
    ErrorSignal.FromCurrentContext().Raise(ex); //ELMAH Signaling
}

重新抛出异常可能是一种不好的做法,因为它很难跟踪应用程序的流程。 如果您打算以某种方式处理错误并且只想记录错误,那么使用信号是一种更好的方法。

请查看DotNetSlackers在ELMAH上的这本优秀指南


过滤器是处理此问题的最简洁方法。 在此处查看此解决方案https://stackoverflow.com/a/5936867/965935


推荐阅读