使用ELMAH时记录异常而不抛出异常

时间:2014-02-24 21:44:17

标签: asp.net elmah

我正在使用ELMAH登录ASP.Net应用程序。

我的问题是以下行:Elmah.ErrorSignal.FromContext(System.Web.HttpContext.Current).Raise(ex),当在catch块中使用时将异常抛出给调用者或者只是记录它并发送出去错误邮件?

try 
 {
 ...
 }
catch (Exception ex)
{
   Elmah.ErrorSignal.FromContext(System.Web.HttpContext.Current).Raise(ex);

   //do some special processing

}

1 个答案:

答案 0 :(得分:2)

您的代码在ELMAH中记录抛出的异常(ex)并将成功返回给调用者。换句话说,Raise不会抛出异常。

如果你的catch块重新抛出ex或抛出一个新异常,则ex和新异常都会记录到ELMAH,状态代码500将返回给调用者。