在ASP.NET 4.0 Web项目页面中提交文本时遇到"从客户端(XX某某XXX)中检测到有潜在危险的 Request.Form 值"。

报错“说明: ASP.NET 在请求中检测到包含潜在危险的数据,因为它可能包括 HTML 标记或脚本。该数据可能表示存在危及应用程序安全的尝试,如跨站点脚本攻击。如果此类型的输入适用于您的应用程序,则可包括明确允许的网页中的代码。有关详细信息,”

和.NET Framework 2.0有所不同4.0追加一个验证模式System.Web.HttpRequestValidationException,以前2.0中只需要在页面中加入 validateRequest="false" 即可,有时也追加enableEventValidation="false"属性,如<%@ Page validateRequest="false"   enableEventValidation="false"%>这在.NET 2.0中的项目中处理方法。

在.NET Framework 4.0的项目中需要在Webconfig中的httpRuntime中追加验证模式即requestValidationMode="2.0",<httpRuntime requestValidationMode="2.0" />,同时在页面源码顶部Page中追加 validateRequest="false"。也可以都在Webconfig中追加配置如下:

<configuration>
  <system.web>
        <httpRuntime requestValidationMode="2.0" />
  </system.web>
  <pages validateRequest="false">
  </pages>
</configuration>