ViewState

1.当在页面上禁用了ViewState的时候,这个时候在page上面还是能够看见一个隐藏区域保存着ViewState的值,第一个是保存了是否是第一次访问的信息,也就是根据此时的值来判断页面是PostBack还是!PostBack,另外一种可能是启用了ControlState,控件状态,控件状态是无法禁用的,而且也是保存在隐藏区域之中

2..ViewState中保存的值只保存哪些Dirt的脏数据,也就是数据必须进过了修改,那么才会保存在ViewState之中,假如在页面上有俩个Label,一个的值为10个字节,一个为10000个字节,运行之后,你会发现俩个其实保存的ViewState值是差不多大的,因为这个值是保存在生成的cs文件或者是dll之中的,从而在viewState中保存的值并没有这俩个值

3.ViewState属于一个StateBag类型,用来保存服务器控件的状态信息,从而使得每次客户端的请求看起来是一个连续的状态(能够记录每次的数据的修改),而http请求每次是无序的,asp.net采用这种机制来得到新旧值的对比更改信息

4。ViewState开启是在InitCompelete事件时候,在这个之前是没有开启视图状态

5。在使用禁用ViewState=false的时候,要知道是让页框架不在调用LoadViewState,SaveViewState这两个方法,而不是真正的禁用了父类Control中的属性ViewState,从而任然可以使用ViewState,从而在值保存之后,在使用RaisePostDataEventHandler方法可以捕捉到数据的改变

 

 

你可能感兴趣的:(框架,服务器,asp.net,dll,PostBack)