Debug 之 The state information is invalid for this page and might be corrupted
1、问题描述:
网站部署之后,排序或者搜索之后报错:The state information is invalid for this page and might be corrupted
2、问题原因:Viewstate (视图状态持久性机制)
Asp.net页面中ViewState一般是存储在页面的一个隐藏域中:<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="一堆乱七八糟的东西">
很多人可能都遇到过,视图状态被破坏掉了,页面无法显示,
3、解决方法
[1]把页面的 ViewState 去掉,但不是最佳的:
属性:enableViewStateMac
指定从客户端回发页时,ASP.NET 是否应该对页的视图状态运行消息身份验证代码 (MAC)。如果为 True,将检查加密的视图状态,以验证视图状态是否已在客户端被篡改。默认值为 True。
属性:viewStateEncryptionMode
指定视图状态的加密模式。ViewStateEncryptionMode 属性重写配置文件中设置的该属性。
此属性可以为下列可能值之一。
Always:视图状态始终加密。
Auto
视图状态根据控件的请求而加密。
Never
视图状态从不加密,即使控件请求加密时也是如此。
此属性是 .NET Framework 2.0 版中的新属性。
默认值为 Auto。
引发上面这种错误的一般原因都是因为网页还没有完全下载完,页面的ViewState不完全,然后就有了 Postback ,这样就导致了ViewState验证错误。这种解决方法一般就是在页面或者web.config中加上或更改pages属性,如下:
<pages enableEventValidation="false" viewStateEncryptionMode ="Never" />
这样页面就不会进行验证。
(2)。接受数据的变量相同导致;在页面,ViewState把表格对象保存后,可能用的是xml格式,但是如果DataSet和 DataTable的名字一样,会导致xml结构上出了问题,所以当ViewState重新读取时发生错误(一个页面的内容里包含了同样名字为 __VIEWSTATE的变量的内容,所以在主页面提交时,会发现内容已经变化了.所以没办法提交.)
3 解决办法:
首先尝试了在页面,form,repeater上都禁用了viewstate,但是不起作用还是不行,后尝试修改web.config并实现。
web.config,加配置:<pages validateRequest="false" enableViewStateMac='false' />
若是崩掉,提示customers之类的错误,再添加一个配置:<customErrors mode="Off" defaultRedirect="GenericErrorPage.htm"></customErrors>
Debug 之 The state information is invalid for this page and might be corrupted的更多相关文章
- PatentTips - Virtual machine management using processor state information
BACKGROUND OF THE INVENTION The invention generally relates to virtual machine management, and more ...
- ironic state information
参考: http://blog.csdn.net/zhonglinzhang/article/details/74202562 http://blog.csdn.net/wanghuiict/arti ...
- 常用的PC/SC接口函数
PC/SC规范是一个基于WINDOWS平台的一个标准用户接口(API),提供了一个从个人电脑(Personal Computer)到智能卡(SmartCard)的整合环境,PC/SC规范建立在工业标准 ...
- COM Error Code(HRESULT)部分摘录
Return value/code Description 0x00030200 STG_S_CONVERTED The underlying file was converted to compou ...
- PatentTips - Modified buddy system memory allocation
BACKGROUND Memory allocation systems assign blocks of memory on request. A memory allocation system ...
- Cisco IOS debug command reference Command A through D
debug aaa accounting through debug auto-config debug aaa accounting : to display information on acco ...
- Cisco IOS Debug Command Reference I through L
debug iapp through debug ip ftp debug iapp : to begin debugging of IAPP operations(in privileged EXE ...
- Cisco IOS Debug Command Reference Command E through H
debug eap through debug he-module subslot periodic debug eap : to display information about Extensib ...
- State management(状态管理)
State management https://en.wikipedia.org/wiki/State_management UI控件的状态管理, 例如按钮的灰化.只读.显示隐藏等. 特殊地一个控件 ...
随机推荐
- 实用Python 语句集(入门者入)
1. Python IDLE中切换当前路径 在Python自带的编辑器IDLE中或者Python shell中不能使用cd命令,那么跳到目标路径呢. 方法是使用os包下的相关函数实现路径切换功能. i ...
- 使用Spring Profile和Mybatis进行多个数据源(H2和Mysql)的切换
最近在做WebMagic的后台,遇到一个问题:后台用到了数据库,本来理想情况下是用Mysql,但是为了做到开箱即用,也整合了一个嵌入式 数据库H2.这里面就有个问题了,如何用一套代码,提供对Mysql ...
- (二)NUnit单元测试心得
现在接着上次说到的内容,如何在项目中进行单元测试.由于做了一些调整,我上次发的内容,我这次也会重新发一次,请认真看看. 一.软件开发过程中存在的问题(没有使用单元测试的情况下) 难于定位bug的位置 ...
- Flume 与Kafka区别
今天开会讨论日志处理为什么要同时使用Flume和Kafka,是否可以只用Kafka 不使用Flume?当时想到的就只用Flume的接口多,不管是输入接口(socket 和 文件)以及输出接口(Kafk ...
- 5.2 CUDA Histogram直方图
什么是Histogramming Histogramming是一种从大的数据集中提取典型特征和模式的方式. 在统计学中,直方图(英语:Histogram)是一种对数据分布情况的图形表示,是一种二维统计 ...
- 基于Hadoop 2.2.0的高可用性集群搭建步骤(64位)
内容概要: CentSO_64bit集群搭建, hadoop2.2(64位)编译,安装,配置以及测试步骤 新版亮点: 基于yarn计算框架和高可用性DFS的第一个稳定版本. 注1:官网只提供32位re ...
- leetcode@ [34] Search for a Range (STL Binary Search)
https://leetcode.com/problems/search-for-a-range/ Given a sorted array of integers, find the startin ...
- ABAP报表程序编写规范 .
一. 程序的结构: 典型的ABAP报表程序是由多个代码区域组成,各代码区的存放位置以下列顺序为准,具体格式如下: *----------------------------- ...
- tomcat登陆WEB显示无权限问题&& tomcat无限循环启动问题
tomcat登陆WEB显示无权限问题 The user specified as a definer (”@’%') does not exist 原因分析 因为创建视图使用的是xff@%用户(目前已 ...
- java类的访问控制符与其他几个特殊修饰符的总结
1 访问控制符 1.1 字段或者方法的访问控制符 同一个类中 同一个包中 不同包中的子类 不同包中的非子类 private YES 默认(包可访问) YES YES prot ...