视图状态的程序分块

隐藏视图状态的大小默认是没有限制的,如果有时候页面的隐藏字段大于某个特定的尺寸,一些代理服务器和防火墙很可能会拒绝让这个页面通过,可以通过视图状态分块来解决这个问题,它会自动把视图状态分成多个字段,保证隐藏字段不会超出设置的阀值。

设置页面隐藏视图的最大尺寸

<configuration>
  
<system.web>
    
<pages maxPageStateFieldLength="1024"/> //以字节为单位
  
</system.web>
</configuration>

 

 

当页面产生的视图状态比设定值大,就会自动创建若干个隐藏字段

自动分块的视图状态
<input type="hidden" name="__VIEWSTATEFIELDCOUNT" id="__VIEWSTATEFIELDCOUNT" value="5" />

<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="。。。" />

<input type="hidden" name="__VIEWSTATE1" id="__VIEWSTATE1" value="。。。" />

<input type="hidden" name="__VIEWSTATE2" id="__VIEWSTATE1" value="。。。" />

<input type="hidden" name="__VIEWSTATE3" id="__VIEWSTATE1" value="。。。" />

<input type="hidden" name="__VIEWSTATE4" id="__VIEWSTATE1" value="。。。" />
视图状态的分块不能提高性能,反而会增加一点序列化的负载,设计时,应该尽量在使徒状态中保存尽量少的信息。


 

 

posted @ 2010-01-25 20:58  ._  阅读(172)  评论(0编辑  收藏  举报