在ASP.NET中出现A potentially dangerous Request.Form value was detected from the client错误是因为Request时出现有HTML或Javascript等字符串时,系统会认为是危险性值。
解决方案:

  1. 在.aspx文件头中加入: 
    <%@ Page validateRequest="false"  %>  
  2. 如果是在.Net4.0中,还需要在配置文件中加入以下代码:
    <httpRuntime requestValidationMode="2.0"/>
  3. 在配置文件中加入以下代码:
    <pages validateRequest="false" />但是这样的写法不安全,请慎用。可以指定某些页面不验证:
  4. <location path="Views/News/Edit.ascx">
        <system.web>
          <pages validateRequest="false" />
        </system.web>
    </location>

     

  5. 其他方案:在Controller的Action前面加入[ValidateInput(false)]
  6. 如果以上方案都没有效果,那就只能使用终极解决方案:在ViewModel的属性上添加[AllowHtml]
posted on 2012-12-24 10:44  Mr.Young  阅读(276)  评论(0编辑  收藏  举报