(生成原理)1.在页面类对象,执行PR方法的时候,先创建了控件树,
然后通过执行LoadState方法,将请求报文中的名字为 __VIEWSTATE的值,
然后反base64编码,进行反序列化,最终还原成集合,
然后将其中属于程序员自己的添加到ViewState 里的键值对 还原到
页面对象的ViewState属性中。然后才执行的Page_Load方法。
在执行SaveState(将所有的服务器端控件的属性及值保存到ViewState属性中)
最后在页面生成html代码的时候,遍历ViewState中的键值集合,
然后将里面序列化,在将序列化后的字符串使用base64编码,最后生成
一个名为 __ViewState的隐藏域,在页面生成整个html代码的时候,作为
一个隐藏域添加到页面中
(点击提交按钮)2.A.此时在LoadState方法 分析请求报文里名为__VIewState
的隐藏域,将里面的字符串成反base64编码,然后反序列化还原成集合对象;
将其中用户添加的属性存入对象的ViewState属性值中。B.同时还将服务器端控件
的属性值从隐藏域中还原