我已经设置号 validateRequest="false" 但是 当我要遭textbox中显示出文件内容时就会出现上述的错误。
而且第一次显示都是成功的,但当再次上传文件,显示新的文件时就会出错。奇怪的是并不是所有的文件都会有这样的错误,当文件为.c文件时才会出现这样的问题。是不是应为.c文件含有非法字符。【错误显示如下】:
从客户端(TextBox1="...
#include <yylex.h>/* name...")中检测到有潜在危险的 Request.Form 值。 
说明: 请求验证过程检测到有潜在危险的客户端输入值,对请求的处理已经中止。该值可能指示存在危及应用程序安全的尝试,如跨站点脚本攻击。若要允许页面重写应用程序请求验证设置,请将 httpRuntime 配置节中的 requestValidationMode 特性设置为 requestValidationMode="2.0"。示例: <httpRuntime requestValidationMode="2.0" />。设置此值后,可通过在 Page 指令或 <pages> 配置节中设置 validateRequest="false" 禁用请求验证。但是,在这种情况下,强烈建议应用程序显式检查所有输入。有关更多信息,请参见 http://go.microsoft.com/fwlink/?LinkId=153133。 异常详细信息: System.Web.HttpRequestValidationException: 从客户端(TextBox1="...
#include <yylex.h>/* name...")中检测到有潜在危险的 Request.Form 值。

解决方案 »

  1.   

    你的文本框的值里包含了特殊符合了。
    一种是<httpRuntime requestValidationMode="2.0" />在.aspx文件头中加入这句: 
    <%@ Page validateRequest="false"  %> 
    或者
    修改web.config文件: 
    <configuration> 
      <system.web> 
        <pages validateRequest="false" /> 
      </system.web> 
    </configuration> 
    因为validateRequest默认值为true。只要设为false即可。
      

  2.   

    二步走
    一:在web.config中加<httpRuntime requestValidationMode="2.0" />
    二:<%@ Page validateRequest="false" %>  或者configuration>  
      <system.web>  
      <pages validateRequest="false" />  
      </system.web>  
    </configuration> 
      

  3.   

    说明: 请求验证过程检测到有潜在危险的客户端输入值,对请求的处理已经中止。该值可能指示存在危及应用程序安全的尝试,如跨站点脚本攻击。若要允许页面重写应用程序请求验证设置,请将 httpRuntime 配置节中的 requestValidationMode 特性设置为 requestValidationMode="2.0"。示例: <httpRuntime requestValidationMode="2.0" />。设置此值后,可通过在 Page 指令或 <pages> 配置节中设置 validateRequest="false" 禁用请求验证。
      

  4.   

    一:在web.config中加<httpRuntime requestValidationMode="2.0" />
    请问这一句加到哪里,谢谢高手指点。
      

  5.   

    我找到了在那里加了            加在system.web下面即可