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)

相关文章

这篇文章主要讲解了“WPF如何实现带筛选功能的DataGrid”,文...
本篇内容介绍了“基于WPF如何实现3D画廊动画效果”的有关知识...
Some samples are below for ASP.Net web form controls:(fr...
问题描述: 对于未定义为 System.String 的列,唯一有效的值...
最近用到了CalendarExtender,结果不知道为什么发生了错位,...
ASP.NET 2.0 page lifecyle ASP.NET 2.0 event sequence cha...