一、回发或回调参数无效
回发或回调参数无效。在配置中使用 <pages enableEventValidation="true"/> 或在页面中使用 <%@ Page EnableEventValidation="true" %> 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。 二、验证视图状态 MAC 失败 验证视图状态 MAC 失败。如果此应用程序由网络场或群集承载,请确保 <machineKey> 配置指定了相同的 validationKey 和验证算法。不能在群集中使用 AutoGenerate。有很多人说form嵌套,ajax等导致,但这是不可预期的,不是那次bug监控,都很难发现,太郁闷了,你都不知道什么时候会了来,想调试也没法调,有时点击频繁就报出这两个错误
按照网友提供的方法,各个地方设置为false还是会出来,我都快郁闷死了求如何彻底,完全的关闭这两个验证,我不要验证行吧。。
回发或回调参数无效。在配置中使用 <pages enableEventValidation="true"/> 或在页面中使用 <%@ Page EnableEventValidation="true" %> 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。 二、验证视图状态 MAC 失败 验证视图状态 MAC 失败。如果此应用程序由网络场或群集承载,请确保 <machineKey> 配置指定了相同的 validationKey 和验证算法。不能在群集中使用 AutoGenerate。有很多人说form嵌套,ajax等导致,但这是不可预期的,不是那次bug监控,都很难发现,太郁闷了,你都不知道什么时候会了来,想调试也没法调,有时点击频繁就报出这两个错误
按照网友提供的方法,各个地方设置为false还是会出来,我都快郁闷死了求如何彻底,完全的关闭这两个验证,我不要验证行吧。。
解决方案 »
- listbox里的项做sql条件语句的判断怎么写
- 关于requiredfieldvalidator
- 现在租用空间的个人网站也要通过审批ICP证了。如果购买了空间,ICP证不能通过审批,就是购买了空间又无法办个人网站,岂不是百花几百元
- 求教ASP.net服务器的建立详细过程(要从开始到asp.net网站运行成功)
- IsInRole ?Role?
- 异常详细信息: System.Data.SqlClient.SqlException: 第 1 行: 'Admin' 附近有语法错误。
- 表单验证问题
- 请问如何对其它WEB页面刷新
- 急,IIS每天死一次,找不到原因,求助各位高手?
- 寻求深圳ASP.NET(C#)实习职位
- 简单Sql问题
- vs2005 c# 连接access数据库自己总是在C盘下找数据库
按照网友提供的方法,各个地方设置为false还是会出来,我都快郁闷死了 求如何彻底,完全的关闭这两个验证,我不要验证行吧。。
<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="x.aspx.cs" Inherits="x" EnableEventValidation="false" MaintainScrollPositionOnPostback="true" %>
修改为-->
<pages enableEventValidation="false"/>这个好像就可以解决提示的问题吧
比如 gridview 用JS删了一行
回发的时候 会验证这个状态 改了就不能通过验证了
http://msdn.microsoft.com/zh-cn/library/system.web.ui.sessionpagestatepersister(VS.80).aspx可以将ViewState保存在Session中,而仅仅把ControlState输出到客户端,从而减小下载的__ViewState隐藏域的大小。但是这会在Session丢失时同时丢失页面状态,造成用户操作异常。我以前写过一个类,可以设置为你的Page的父类,它把ViewState和ControlState全都缓存在服务器端硬盘,并且服务器重启也没有影响。using System;
using System.IO;
using System.Threading;
using System.Web.UI;public class VPage : Page
{
static private DirectoryInfo Dir = new DirectoryInfo(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"App_Data\ViewState\")); static VPage()
{
if (!Dir.Exists)
Dir.Create();
} protected override object LoadPageStateFromPersistenceMedium()
{
string viewStateID = (string)((Pair)base.LoadPageStateFromPersistenceMedium()).Second;
string stateStr = (string)Cache[viewStateID];
if (stateStr == null)
{
string fn = Path.Combine(Dir.FullName, viewStateID);
stateStr = File.ReadAllText(fn);
}
else
Cache.Remove(viewStateID);
return new ObjectStateFormatter().Deserialize(stateStr);
} protected override void SavePageStateToPersistenceMedium(object state)
{
string value = new ObjectStateFormatter().Serialize(state);
string viewStateID = (DateTime.Now.Ticks + (long)this.GetHashCode()).ToString(); //产生离散的id号码
string fn = Path.Combine(Dir.FullName, viewStateID);
ThreadPool.QueueUserWorkItem((obj) => File.WriteAllText(fn, value)); //或者只写 File.WriteAllText(fn, value)
Cache.Insert(viewStateID, value);
base.SavePageStateToPersistenceMedium(viewStateID);
} static private bool _flag = false; protected override void OnUnload(EventArgs e)
{
base.OnUnload(e);
if (_flag)
return; _flag = true;
DateTime dt = DateTime.Now.AddHours(-1);
try
{
foreach (FileInfo fl in Dir.GetFiles())
if (fl.LastAccessTime < dt)
fl.Delete();
}
catch
{
}
}
}asp.net Ajax来说,避免下载__ViewState非常重要,因为asp.net Ajax也是要维护状态的,就会在客户端于千里之外的服务器之间丢来丢去__ViewState。我上面这个父类,可以让__ViewState只剩下很短的一个字符串。