在配置中或<%@ Page ">
我正在用ASP.NET做一个在线错误追踪系统,我正在使用Gridview在网页上显示记录。它在一些web表单中工作正常,但在某些web表单中,当我单击gridview的编辑事件时,我收到如下所示的错误。请指导我解决这个错误。
'/BTS‘应用程序中的服务器错误。
无效的回发或回调参数。使用启用事件验证
<pages enableEventValidation="true"/>
在配置中或
<%@ Page EnableEventValidation="true" %>
在一个页面中。为安全起见,此功能验证回发或回调事件的参数是否源自最初呈现它们的服务器控件。如果数据有效且需要,请使用ClientScriptManager.RegisterForEventValidation方法注册回发或回调数据以进行验证。
发布于 2014-03-10 05:52:28
只要这样做--> EnableEventValidation="false"
,如下所示
<%@ Page Title="" Language="C#" MasterPageFile="~/shirish.master" AutoEventWireup="true"
CodeFile="s.aspx.cs" Inherits="_s" EnableEventValidation="false" %>
发布于 2014-03-10 06:05:01
当请求验证失败时,这是ASP.NET中的典型错误。最常见的情况是,当您发出回发时,其中一个输入控件(通常是TextBox)包含html或javascript代码。正如错误消息所述,有几种方法可以绕过此验证:
通过在页面级别禁用请求验证来进行验证,这可以通过将页面指令的EnableEventValidation
属性设置为
web.config
文件ClientScriptManager.RegisterForEventValidation
method注册事件验证所需的控件
如果您使用第一种方法,您将关闭事件验证,这意味着您将放松一些内置的安全功能。另一方面,第二种方法有点笨拙,因为它需要预测控件允许的值
https://stackoverflow.com/questions/22292736
复制