这个问题发生在一个MVC3的网站上,事实上我试了一下,跑一个asp.net的网站,框架选择4.0会报同样的错误,英文版的同学会看到如下:"A potentially dangerous Request.Form value was detected from the client".
在4.0以前的年代,简单在页面头部标注一个ValidateRequest=’false’或者在web.config里面标识即可,但是4.0下这么修改后是无效的,还需要在web.config文件里面标注<httpRuntime requestValidationMode="2.0"/>
httpRuntime节点如果不存在,那么就添加到<system.web>节点下。
也就是说,<system.web>节点下,有这两个节点就对了:
<system.web>
<pages validateRequest="false"></pages>
<httpRuntime requestValidationMode="2.0"></httpRuntime>
</system.web>