Catch HttpRequestValidationException MVC

时间:2016-05-17 18:03:13

标签: c# asp.net-mvc error-handling

我使用下面的代码来捕获HttpRequestValidationException。 但问题是它导航到不同的页面。

我想显示"输入无效"用户输入信息并单击“提交”按钮的同一页面上的错误消息。

protected void Application_Error(object sender, EventArgs e)
{
    var context = HttpContext.Current;
    var exception = context.Server.GetLastError();
    if (exception is HttpRequestValidationException)
    {            
        Response.Clear();
        Response.StatusCode = 200;
        Response.Write(@"<html><head></head><body>Invalid Input</body></html>");
        Response.End();
        return;
    }
}

1 个答案:

答案 0 :(得分:-1)

您可以使用try / catch块:

protected void Application_Error()
{
    var context = HttpContext.Current;
    var exception = context.Server.GetLastError();

    try
    {
        //Operations you need to perform
    }
    catch (HttpRequestValidationException)
    {
      //Output Error
    }
}