Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net Viewstate移动会话生成错误为';此页的状态信息无效,可能已损坏';_Asp.net - Fatal编程技术网

Asp.net Viewstate移动会话生成错误为';此页的状态信息无效,可能已损坏';

Asp.net Viewstate移动会话生成错误为';此页的状态信息无效,可能已损坏';,asp.net,Asp.net,我已经用rad网格创建了网页。在其中,我提供了过滤、短路、分组和分页功能。由于性能问题,我尝试将viewsatate移动到会话中。 在那个里,我在网页中设置了EnableViewSate false,并在页面中添加了下面的代码 protected override object LoadPageStateFromPersistenceMedium() { return Session["ViewState-" + Request.Url.AbsolutePath]

我已经用rad网格创建了网页。在其中,我提供了过滤、短路、分组和分页功能。由于性能问题,我尝试将viewsatate移动到会话中。 在那个里,我在网页中设置了EnableViewSate false,并在页面中添加了下面的代码

    protected override object LoadPageStateFromPersistenceMedium()
    {
        return Session["ViewState-" + Request.Url.AbsolutePath];

    }
    protected override void SavePageStateToPersistenceMedium(object state)
    {
        Session["ViewState-" + Request.Url.AbsolutePath] = state;

        ClientScript.RegisterHiddenField("__VIEWSTATE", "");
    }
但当我在rad网格上做一些事情时,它会产生以下错误


此页的状态信息无效,可能已损坏

如果您使用的是ASP.NET 2.0或更高版本,Microsoft在会话中为ViewState提供了内置功能。您应该使用它以获得最大的兼容性

把这个放在你的.CS文件里

protected override PageStatePersister PageStatePersister
{
  get
  {                
     return new System.Web.UI.SessionPageStatePersister(this);
  }
}

链接至

谢谢MikeLim,我删除了EnableViewState=“false”,并将您的代码放入我的.cs页面。它修复了我的错误,但不会影响页面的性能。页面大小仍然很大。