在视图状态中保存数据的限制是什么?

What is the limit of holding the data in viewstate?

我们在 ViewState 中保存的数据的限制是多少? Viewstate 有限制吗?

ViewState["allDataOfCandidates"]=dt;

此致,

象头神。 http://www.twitter.com/ganeshatkale

Viewstate 没有任何大小限制。但是没有什么是免费的,视图状态也不例外。每当请求 Asp.net 网页时,它肯定会影响性能。

  1. 在所有页面访问中,在保存视图状态阶段,页面 class 收集其控件层次结构中所有控件的集体视图状态,并将状态序列化为基64位编码字符串。 (这是在隐藏的 __VIEWSTATE 表单字段中发出的字符串。)类似地,在回发中,加载视图状态阶段需要反序列化持久化的视图状态数据,并更新控件层次结构中的相关控件。

  2. __VIEWSTATE 隐藏表单域增加了客户端必须下载的网页的额外大小。对于一些视图状态较多的页面,这可能是数十 KB 的数据,这可能需要额外几秒(或几分钟!)供调制解调器用户下载。另外,回发时,__VIEWSTATE表单字段必须在HTTPPOST头中发回Web服务器,从而增加回发请求时间。

如果您正在设计一个用户通常通过调制解调器连接访问的网站,您应该特别关注视图状态可能会增加页面的膨胀。幸运的是,有许多技术可用于减小视图状态大小。您只需关闭该控件的视图状态跟踪。

有关其他信息,您可以浏览 - https://msdn.microsoft.com/en-us/library/ms972976.aspx