为什么我无法禁用请求验证?

时间:2013-10-09 23:45:41

标签: c# .net validation asp.net-mvc-4

我支持MVC4应用,需要禁用请求验证才能进行测试。

我在Web.config

中完成了以下操作
<pages validateRequest="false">
<httpRuntime  requestValidationMode="2.0"/>

当我尝试输入html或脚本时,它仍会验证输入并抛出错误“”

我的行为没有[ValidateInput],默认情况下[ValidateInput]是否存在?我尝试了[ValidateInput(false)]忽略验证。

有没有办法让它忽略验证而不将[ValidateInput(false)]与行动放在一起?

1 个答案:

答案 0 :(得分:2)

您可以将该属性添加到全局过滤器配置中,但请确保它仅在DEBUG模式下完成。 在您的FilterConfig.cs中,只需执行

public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
    //filters.Add(new HandleErrorAttribute());
    #if DEBUG
    filters.Add(new ValidateInputAttribute(false));
    #endif
}