将不确定变为确定~MVC3的ValidateInput属性失灵了
2012-12-04 14:45
239 查看
回到目录
使用MVC3开发WEB应用程序遇到一个问题,在使用xheditor编辑器填写复杂内容时,在POST动作后,出现了不能添加的情况,这是正常的,因为我没有在控制器里设置ValidateInput,但当我设置了ValidateInput属性,或者在Action上添加ValidateInput特性后,结果还是一样,不能提交!
这是怎么回事?原来在web.config里有个设置约束了它,requestValidationMode对于.net framework4.0版本来说,它比之前的版本进行了更大成
程序的优化,这可以被设置为4.0和2.0,对于MVC3项目,它被默认为4.0
4.0(默认)。 HttpRequest 对象在内部设置一个标志,该标志指示每当访问 HTTP 请求数据时应触发请求验证。 这可保证在请求期间访问数据(如 cookie 和 URL)之前触发请求验证。 配置文件中页元素(如果有的话)的请求验证设置或单独页面中的 @ 页指令的请求验证设置将被忽略。
2.0. 仅对网页(而不是对所有 HTTP 请求)启用请求验证。 此外,配置文件中的 pages 元素(如果有的话)的请求验证设置或单独页中的 @ Page 指令的请求验证设置用来确定要验证哪些页请求。
回到目录
使用MVC3开发WEB应用程序遇到一个问题,在使用xheditor编辑器填写复杂内容时,在POST动作后,出现了不能添加的情况,这是正常的,因为我没有在控制器里设置ValidateInput,但当我设置了ValidateInput属性,或者在Action上添加ValidateInput特性后,结果还是一样,不能提交!
这是怎么回事?原来在web.config里有个设置约束了它,requestValidationMode对于.net framework4.0版本来说,它比之前的版本进行了更大成
程序的优化,这可以被设置为4.0和2.0,对于MVC3项目,它被默认为4.0
4.0(默认)。 HttpRequest 对象在内部设置一个标志,该标志指示每当访问 HTTP 请求数据时应触发请求验证。 这可保证在请求期间访问数据(如 cookie 和 URL)之前触发请求验证。 配置文件中页元素(如果有的话)的请求验证设置或单独页面中的 @ 页指令的请求验证设置将被忽略。
2.0. 仅对网页(而不是对所有 HTTP 请求)启用请求验证。 此外,配置文件中的 pages 元素(如果有的话)的请求验证设置或单独页中的 @ Page 指令的请求验证设置用来确定要验证哪些页请求。
<configuration> <system.web> <httpRuntime requestValidationMode="2.0"/> </system.web> </configuration>
回到目录
相关文章推荐
- MVC3在Mono中运行时使用ValidateInput属性不起作用的解决办法
- 将不确定变为确定~类中的属性何时被执行
- 将不确定变为确定~表达式树是否可以有个集合,条件过滤有了新方向续(新增了OR和AND查询)
- 将不确定变为确定~一切归总为“二”(C#中的位运算有啥用)
- 将不确定变为确定~Linq-Distinct()方法是否可以对复杂结果集进行去重?
- 将不确定变为确定~头压缩是否有必要,MVC如何实现头压缩
- 将不确定变为确定~为什么发布项目时用release环境更好些
- 将不确定变为确定~开发人员应该明确知道跨域Post的问题
- 将不确定变为确定~接口应该是什么
- 将不确定变为确定~Razor视图中是否可以嵌套JS代码
- mvc中validateinput属性在asp.net4中不工作
- 将不确定变为确定~DateTime.MinValue和MaxValue引发的异常
- 将不确定变为确定~Linq的Group是否可以根据多个字段进行分组
- 将不确定变为确定系列~Linq的批量操作靠的住吗?