毫无疑问这是一个bug,很多用户升级到rc时都遇到了这个问题,以前很正常的提交只要带有html标签就被报"...从客户端中检测到有潜在危险的 request.form 值。"即使在web.config中禁用页面验证也会出现这个问题.

成因和部分解决方法见:

ASP.NET MVC 3里面客户端输入验证的改动

另一解决方法见:

http://weblogs.asp.net/imranbaloch/archive/2010/11/14/mvc-3-rc-bug-and-quick-solution.aspx

我采用后者的解决方案:

1,后台页面中增加using System.Web.Helpers;的引用

2,修改请求的httppost方法:

之前:


 1 public ActionResult ActionA(FormCollection form1)
 2 {
 3     return View();
 4 }
 5 public ActionResult ActionB(int i,FormCollection form)
 6 {
 7     return View();
 8 }
 9 public ActionResult ActionC(int i, FormCollection formABC, string j, [Bind(Include = "Name,Address")] Student s)
10 {
11     return View();
12 }
13 public ActionResult ActionD(int i, string j,FormCollection f , string k, string t)
14 {
15     return View();
16 }
17 public ActionResult ActionE(FormCollection form123, string t, string t2)
18 {
19     return View(new Student { Age = 30, Name = "Akbar" });
20 }

之后:


 1 public ActionResult ActionA()
 2 {
 3     FormCollection form1 = new FormCollection(Request.Unvalidated().Form);
 4     return View();
 5 }
 6 public ActionResult ActionB(int i)
 7 {
 8     FormCollection form = new FormCollection(Request.Unvalidated().Form);
 9     return View();
10 }
11 public ActionResult ActionC(int i, string j, [Bind(Include = "Name,Address")] Student s)
12 {
13     FormCollection formABC = new FormCollection(Request.Unvalidated().Form);
14     return View();
15 }
16 public ActionResult ActionD(int i, string j, string k, string t)
17 {
18     FormCollection f  = new FormCollection(Request.Unvalidated().Form);
19     return View();
20 }
21 public ActionResult ActionE( string t, string t2)
22 {
23     FormCollection form123 = new FormCollection(Request.Unvalidated().Form);
24     return View(new Student { Age = 30, Name = "Akbar" });
25 }

MVC ValidateInput(false)页面验证失效的解决方案的更多相关文章

  1. mvc配合jquery.validate验证失效,情况之一

    用viewbage绑定input空间的value值,通过submit提交.validate验证失效. 1.应该是mvc的渲染顺序导致js验证失败. 解决方案:改用mvc自带的@html辅助方法,生成文 ...

  2. mvc3.0中[ValidateInput(false)]失效的问题

    在asp.net mvc3.0中[ValidateInput(false)]特性失效了,只需要在网站根目录中的web.config中做如下配置即可: <system.web> <ht ...

  3. 七天学会ASP.NET MVC (五)——Layout页面使用和用户角色管理

    系列文章 七天学会ASP.NET MVC (一)——深入理解ASP.NET MVC 七天学会ASP.NET MVC (二)——ASP.NET MVC 数据传递 七天学会ASP.NET MVC (三)— ...

  4. ASP.NET MVC学习之模型验证篇

    一.学习前的一句话 在这里要先感谢那些能够点开我随笔的博友们.慢慢的已经在博客园中度过一年半了,伊始只是将博客园作为自己学习的记录本一样使用,也不敢将自己的随笔发表到博客园首页,生怕自己的技艺不高,反 ...

  5. ASP.NET MVC学习之模型验证详解

    ASP.NET MVC学习之模型验证篇 2014-05-28 11:36 by y-z-f, 6722 阅读, 13 评论, 收藏, 编辑 一.学习前的一句话 在这里要先感谢那些能够点开我随笔的博友们 ...

  6. 七天学会ASP.NET MVC (五)——Layout页面使用和用户角色管理 【转】

    http://www.cnblogs.com/powertoolsteam/p/MVC_five.html 系列文章 七天学会ASP.NET MVC (一)——深入理解ASP.NET MVC 七天学会 ...

  7. 前端MVC学习总结——AngularJS验证、过滤器

    前端MVC学习总结--AngularJS验证.过滤器 目录 一.验证 二.过滤器 2.1.内置过滤器 2.1.1.在模板中使用过滤器 2.1.2.在脚本中调用过滤函数 2.2.自定义过滤器 三.指令( ...

  8. 【ASP.NET MVC系列】数据验证和注解

    [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操作篇)(下) [04]浅谈ASP. ...

  9. Diy页面服务端渲染解决方案

    1. 问题由来 在移动互联网电商领域,运营每天需要搭建多个促销页面来吸引用户去点击去购买,一开始程序员临时写个新页面去实现,可这些页面可以用几次就不用了,每次创建新页面去实现费时费力,而且,电商的运营 ...

随机推荐

  1. HNU 13108 Just Another Knapsack Problem DP + Trie树优化

    题意: 给你一个文本串,和一些模式串,每个模式串都有一个价值,让你选一些模式串来组成文本串,使获得的价值最大.每个模式串不止能用一次. 思路: 多重背包,枚举文本串的每个位置和模式串,把该模式串拼接在 ...

  2. centos7.x86_64搭建饥荒服务器

    http://blog.ttionya.com/article-1233.html 在centos7下找不到 libcurl-gnutls.so.4,而且必须要安装32位的才行 yum install ...

  3. 50个经典Sql语句

    50个经典Sql语句 --1.学生表 Student(S,Sname,Sage,Ssex) --S 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学生性别 --2.课程表  Cours ...

  4. IOS中UIImagePickerController中文界面问题

    今天沈阳斌子,写IOS项目遇到一个调用照相机的问题,找到解决方法,高速攻克了拿给PM看,结果PM说程序调用的照相机不是中文的是英文的.必须改成中文.上网找到了方法.试用后好用拿出来和大家分享.方法例如 ...

  5. vim水平摆放全部窗体的三个方法

    Method1: map <F7> <ESC>:windo exe "normal \<foobar<C-W>C-W>K"<C ...

  6. 2014 百度之星 1003 题解 Xor Sum

    Xor Sum Problem Description Zeus 和 Prometheus 做了一个游戏,Prometheus 给 Zeus 一个集合,集合中包括了N个正整数,随后 Prometheu ...

  7. 线程1—Thread

    随便选择两个城市作为预选旅游目标.实现两个独立的线程分别显示10次城市名,每次显示后休眠一段随机时间(1000ms以内),哪个先显示完毕,就决定去哪个城市.分别用Runnable接口和Thread类实 ...

  8. PostgreSQL数据库常用脚本-初始化、备份、恢复推荐脚本

    公司最近开始逐步推广使用PostgreSQL,为方便开发人员和实施人员操作,特整理数据库初始化.备份.恢复的推荐脚本如下: 1. 连接数据库 psql -h 127.0.0.1 -p 1921 -U ...

  9. C++笔试专题一:运算符重载

    一:下面重载乘法运算符的函数原型声明中正确的是:(网易2016校招) A:MyClass operator *(double ,MyClass); B:MyClass operator *(MyCla ...

  10. monitoring_db

    #!/bin/bash# Program: # Automatic inspection operation system and oracle database.# History:# 2016/0 ...