e.Dismiss()在Global.asax.cs中的ErrorLog_Filtering方法中不起作用

时间:2017-02-09 14:52:00

标签: c# asp.net-mvc elmah

我正在尝试阻止错误到达我的错误集合,但我无法做到。

public void ErrorLog_Filtering(object sender, ExceptionFilterEventArgs e)
{
    e.Dismiss();
}

错误仍然存​​在于我的错误收集中,我不知道为什么。我放置断点并且方法有效,e.Dismiss()被调用。 有任何想法吗?我全力以赴。

1 个答案:

答案 0 :(得分:0)

我发现了发生了什么。其他人添加了一个全局过滤器,用于处理异常并将其记录到错误集合中。

public static void RegisterGlobalFilters(GlobalFilterCollection filters)
    {
        filters.Add(new LogExceptionFilter());
    }

并在LogExceptionFilter中:

 public class LogExceptionFilter : IExceptionFilter
    {
        public void OnException(ExceptionContext context)
        {
            _log.Error(context.Exception);            
        }

        private readonly ILog _log = LogManager.Instance.GetLogger();
    }