黑马训练营自学笔记(03)
?
---------------------- Windows Phone 7手機開發、.Net培訓、期待與您交流! ----------------------
?
對ViewState的一些認識
?? 因為Http協議是一總無狀態記憶的協議,即服務器不會知道上次可客戶端請求的內容。WebForm中許多服務端控件的實現依靠的就是ViewState,ViewState是一個表單隱藏域,它保存了非表單元素的狀態信息,創建服務器端控件的時候,服務器端控件的狀態就依靠這個ViewState來保存。瀏覽器只認html代碼,服務器端控件會被服務器渲染成html代碼發回給客戶端。所以服務端控件是基于ViewState的對客戶端控件的一個封裝。
?? 有時我們在使用服務端控件的時候并不需要把這個控件的一些狀態信息保存到ViewState中,因為ViewState中不必要的一些信息會加大網頁的流量,影響網頁的加載速度和程序的性能,所以需要恰當的禁用ViewState。禁用ViewState的方法:EnableViewState="false"。需要說明的是,ViewState不能達到完全禁用的效果。禁用ViewState后,依賴于ViewState的控件狀態將會失效反之這不會。比如WebForm實現的兩個自家程序中。Input版本不會受影響(input是表單元素,其值不依靠ViewState),Div版本失效(Div是非表單元素,其值依靠ViewState)。而且禁用ViewState后在cs代碼中直接對Label控件賦值也是能辦到的(如:Label1.Text="100"),因為這個不依靠原來的狀態。
?
---------------------- Windows Phone 7手機開發、.Net培訓、期待與您交流! ----------------------
?
轉載于:https://www.cnblogs.com/qinao/archive/2012/10/11/2720048.html
總結
以上是生活随笔為你收集整理的黑马训练营自学笔记(03)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Quaruts II 增量编译
- 下一篇: MongoDB源码阅读之ReplSet源