ValidateInput属性似乎无法在ASP.NET MVC中工作

前端之家收集整理的这篇文章主要介绍了ValidateInput属性似乎无法在ASP.NET MVC中工作前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图摆脱“潜在的危险Request.Form值”错误,我没有运气。是的,是的,我已经阅读了所有其他StackOverflow相关的问题,没有一个似乎让我更接近答案。我在所有相关的控制器操作上使用[ValidateInput(false)] …我已经检查了很多次。我在所有相关的ASPX视图中使用ValidateRequest =’false’。

我正在使用ASP.NET MVC 2 Preview 1,但我不认为这是一个问题,因为在框架中生成错误较低; Page.ProcessRequest是准确的。我看不到任何错误,我甚至设置了< page validateRequest ='false'>在web.config中,也没有解决它。

解决方法

使用asp.net 4,您还需要在web.config中配置验证模式。

将< system.web>的子项设置为以下内容元件:

<httpRuntime requestValidationMode="2.0"/>

Asp.Net 4默认将requestValidationMode设置为4.0,这告诉系统在HTTP请求的BeginRequst阶段之前执行请求验证。验证将在系统达到动作属性之前发生,告诉它不验证请求,从而使属性无效。设置requestValidationMode =“2.0”将恢复为asp.net 2.0请求验证行为,允许ValidateInput属性按预期工作。

(感谢吉姆 – upvotes belong here)

猜你在找的asp.Net相关文章