JC *_*bbs 17 asp.net asp.net-mvc
我试图绕过"潜在危险的Request.Form值"错误,我没有运气.是的,是的,我已经阅读了所有其他与StackOverflow相关的问题,但似乎没有一个问题让我更接近答案.我正在使用[ValidateInput(false)]所有相关的控制器动作......我已经多次检查过了.我正在使用ValidateRequest='false'所有相关的ASPX视图.
我正在使用ASP.NET MVC 2 Preview 1,但我不认为这是一个问题,因为错误在框架中生成较低; Page.ProcessRequest确切.我看不到任何我做错的事情,我甚至设置<page validateRequest='false'>在web.config中并且也没有解决它.
Sim*_*ver 32
使用asp.net 4,您还需要在web.config中配置验证模式.
将以下内容设置为<system.web>元素的子 元素:
<httpRuntime requestValidationMode="2.0"/>
Run Code Online (Sandbox Code Playgroud)
Asp.Net 4 4.0默认将requestValidationMode设置为,它告诉系统在HTTP请求的BeginRequst阶段之前执行请求验证.验证将在系统到达action属性之前发生,告诉它不验证请求,从而使属性无效.设置requestValidationMode ="2.0"将恢复为asp.net 2.0请求验证行为,允许ValidateInput属性按预期工作.
(感谢Jim - upvotes属于这里)
嗯......回答了我自己的问题......罪魁祸首:Html.RenderAction<T>.如果在请求上下文中有任何其他操作的调用(例如,来自母版页或子部分),则这些操作也需要进行[ValidateInput(false)]适当的设置.这似乎是一个问题,虽然使用MVC或Page对象在ASP.NET中的工作方式,因为这是一个真正混淆的错误.
| 归档时间: |
|
| 查看次数: |
8148 次 |
| 最近记录: |