未能加载视图状态。正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配。例如,当以动态方式添加控件时,在回发期间添加的控件必须与在初始请求期间添加的控件的类型和位置相匹配。
2014-10-30 18:03
405 查看
说明:执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Web.HttpException: 未能加载视图状态。正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配。例如,当以动态方式添加控件时,在回发期间添加的控件必须与在初始请求期间添加的控件的类型和位置相匹配。
源错误:
堆栈跟踪:
这个问题网上的解决办法一般都是:
将Page.EnabledViewState设置为false或者是将gridview的 EnabledViewState设置为false,这样做是可以,但是这不是我们想要的结果。
这个问题我后来仔细的看了一下,是gridview的RowEditing事件问题,更改 gridview.EditIndex后需要再次绑定数据!
此外,也可能是gridview在更新时的问题,只要在数据更新成功后先将gridview.EditIndex的值设置为-1 ,然后再绑定数据就可以了,如果是在绑定数据之后再将gridview.EditIndex的值设置为-1则,就会出现如上所述问题。
异常详细信息: System.Web.HttpException: 未能加载视图状态。正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配。例如,当以动态方式添加控件时,在回发期间添加的控件必须与在初始请求期间添加的控件的类型和位置相匹配。
源错误:
执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。 |
[HttpException (0x80004005): 未能加载视图状态。正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配。例如,当以动态方式添加控件时,在回发期间添加的控件必须与在初始请求期间添加的控件的类型和位置相匹配。] System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +303 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +134 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +218 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +134 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +218 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +134 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +218 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +134 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +218 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +134 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +218 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +134 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +218 System.Web.UI.Page.LoadAllState() +312 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1661 |
将Page.EnabledViewState设置为false或者是将gridview的 EnabledViewState设置为false,这样做是可以,但是这不是我们想要的结果。
这个问题我后来仔细的看了一下,是gridview的RowEditing事件问题,更改 gridview.EditIndex后需要再次绑定数据!
此外,也可能是gridview在更新时的问题,只要在数据更新成功后先将gridview.EditIndex的值设置为-1 ,然后再绑定数据就可以了,如果是在绑定数据之后再将gridview.EditIndex的值设置为-1则,就会出现如上所述问题。
相关文章推荐
- 未能加载视图状态。正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配。例如,当以动态方式添加控件时,在回发期间添加的控件必须与在初始请求期间添加的控件的类型和位置相匹配
- .net 错误:动态加载控件时出现错误:未能加载视图状态。正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配。
- 未能加载视图状态。正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配。
- 未能加载视图状态。正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配。
- 未能加载视图状态。正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配。
- 未能加载视图状态。正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配。
- ASP.Net 动态加载控件 未能加载视图状态 的解决
- 关于Asp.net 页面动态加载用户控件,出现“未能加载视图状态”的原因[续]
- 关于Asp.net 页面动态加载用户控件,出现“未能加载视图状态”的原因
- 使用NHibernate绑定页面数据时,出现"未能加载视图状态,正在向其中加载视图状态。。。。"的Bug
- 关于Asp.net 页面动态加载用户控件,出现“未能加载视图状态”的原因
- android一个动态添加删除网格视图的demo,可把状态保存在数据库中
- android 获取控件屏幕位置 动态添加 视图
- UIKit---UIButton状态,平移,缩放,代码方式动态添加控件
- 对动态添加控件的视图状态分析
- 动态创建的控件不能保存视图状态
- 动态加载控件UserControl到页面上:视图状态问题
- 动态加载控件UserControl到页面上 . 视图状态问题
- 动态加载用户控件----以用户控件的方式达到代码分离的目的[转]
- 未能加载视图状态???