蜜桃欧美|戒汤唯未删减版|先锋影音av资源在线观看|国产精品裸体一区二区三区,这么多年电影完整版免费在线观看,卧底2020电视剧免费全集在线观看,美好事物电影完整版在线观看

主營(yíng)業(yè)務(wù):網(wǎng)站制作 網(wǎng)站優(yōu)化 小程序制作 石家莊網(wǎng)站制作網(wǎng)站建設(shè)有限公司歡迎您!
石家莊閃云網(wǎng)絡(luò)科技有限公司
客服熱線15383239821
如何讓自己的網(wǎng)站更有質(zhì)量?

ASP.net View State

發(fā)布時(shí)間:2013/1/5 22:21:14

什么是ViewState?
對(duì)于ViewState,我們有許多的誤解。Viewstate不保存控件,而是去保存form中對(duì)應(yīng)ID控件的值,特別是那些由于他們沒有和form一起post 而在頁(yè)面回傳時(shí)會(huì)丟失的控件的值。viewstate一般不要用來(lái)保存session或在頁(yè)面間傳輸數(shù)據(jù)。在頁(yè)面回傳后,viewstate不能用來(lái)動(dòng)態(tài)地創(chuàng)建頁(yè)面的控件。他在頁(yè)面回傳之后不回復(fù)控件的值。甚至一個(gè)控件的viewstate被禁止了,在頁(yè)面回傳后,控件的值仍然不會(huì)丟失,比如textbox,dropdownlist控件。那什么是viewstate呢?viewstate保存最后一次在服務(wù)器上處理的頁(yè)面狀態(tài)。他不能保存那些被動(dòng)態(tài)改變的控件的值。

viewstate是如何工作的?
所有的服務(wù)器端控件都有一個(gè)ViewState屬性。如果他是enable的,這個(gè)控件的viewstate就起作用了。那viewstate是在哪里,是如何存儲(chǔ)的呢?當(dāng)一個(gè)頁(yè)面第一次加載,所有的控件被序列化到viewstate,保存在一個(gè)叫_ViewState的隱藏form字段里。這個(gè)隱藏字段對(duì)應(yīng)服務(wù)器端的ViewState對(duì)象。頁(yè)面的ViewState使用System.Web.UI.StateBag對(duì)象存儲(chǔ)鍵值對(duì)。當(dāng)一個(gè)回傳發(fā)生,頁(yè)面反序列化ViewState然后恢復(fù)所有的控件。頁(yè)面中保存控件的ViewState以base 64 編碼格式存儲(chǔ)成name - value。當(dāng)一個(gè)頁(yè)面重新加載,會(huì)調(diào)用兩個(gè)和ViewState相關(guān)的方法, LoadViewState 和SaveViewState。下面是我的一個(gè)頁(yè)面中的_ViewState隱藏字段。

<input type="hidden" name="__VIEWSTATE" value="dNrATo45Tm5QzQ7Oz8AblWpxPjE9MMl0Aq765QnCmP2TQ==" />

啟用和禁止ViewState
在默認(rèn)情況下,所有服務(wù)器控件的viewstate開啟狀態(tài),通過(guò)以及幾種途徑來(lái)禁止。
1.頁(yè)面級(jí)別
2.控件級(jí)別
3.應(yīng)用程序級(jí)別
4.機(jī)器級(jí)別
頁(yè)面級(jí)別禁止的方法是在頁(yè)面的開始寫入

<%Page EnableViewState ="False" %> 
or 
<%Page EnableViewState ="True" %>

控件級(jí)別是

<asp:TextBox id="txtCode" runat="server” EnableViewState="false" />
or
<asp:TextBox id="txtCode" runat="server" EnableViewState="true" />

程序級(jí)別是在web.config中

相關(guān)新聞推薦

在線客服 : 服務(wù)熱線:15383239821 電子郵箱: 27535611@qq.com

公司地址:石家莊市新華區(qū)九中街江西大廈4062

備案號(hào):冀ICP備2022000585號(hào)-4