0
保存的用戶名我使用這個過濾器登錄HttpRequestValidationException在ELMAH:ELMAH不會HttpRequestValidationException
public class ElmahRequestValidationErrorFilter : IExceptionFilter
{
public void OnException(ExceptionContext context)
{
if (context.Exception is HttpRequestValidationException)
Elmah.ErrorSignal.FromCurrentContext().Raise(context.Exception.InnerException);
}
}
,我註冊這個FilterConfig.cs篩選:
public class FilterConfig
{
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new ElmahRequestValidationErrorFilter());
filters.Add(new HandleErrorAttribute());
}
}
但是,當這個錯誤發生,被驗證的用戶的用戶名不會保存在用戶列的elmah日誌中。但在其他錯誤中,它的劑量工作正常。 我該如何解決這個問題?監守ELMAH從
Thread.CurrentPrincipal.Identity.Name
得到的用戶名可以設置當前用戶ELMAH記錄錯誤之前ELMAH
是否記錄了錯誤?我只是試圖重新創建您的設置,但在我的情況下,用戶名已成功記錄。 – ThomasArdal
另請注意,ELMAH不支持引發null作爲例外。這意味着如果InnerException爲null,那麼您的過濾器本身將引發異常,並且原始錯誤永遠不會記錄到您的ELMAH日誌中。 – ThomasArdal
我試圖context.Exception,但再次沒有上升用戶名... – BlackViking