如何捕获HttpRequestValidationException

Dja*_*ave 5 c#-4.0 asp.net-mvc-4

当发生HttpRequestValidationException时,如何将用户重定向到自定义错误页面.我试图在我的basecontroller中捕获它:

protected override void OnException(ExceptionContext exceptionContext)
    {
      if (exceptionContext.Exception is HttpRequestValidationException)
        {
          this.View("CustomError").ExecuteResult(this.ControllerContext);
        }
    }
Run Code Online (Sandbox Code Playgroud)

但我仍然得到例外:从客户端检测到一个潜在危险的request.form值

Dar*_*rov 5

此异常在执行请求时发生得更早,并且无法由OnException基本控制器中的方法处理.您可以编写一个全局异常处理程序,如我所示this post.