對頁面內(nèi)容發(fā)生變化的響應(yīng)是使用視圖狀態(tài)(Viewstate)來增強的。因為HTTP是無狀態(tài)的協(xié)議,任何需要狀態(tài)的內(nèi)容都需要用更便于定制的方法來管理。視圖狀態(tài)就是ASP.NET Web?Forms采用此種定制方法,在瀏覽器和服務(wù)器之間傳遞狀態(tài)信息的一種方式。實體的值包含人類不可讀的散列信息。幸好,ASP.NET?能夠解析該信息,理解頁面上各個項的前一個版本。

  一定要理解視圖狀態(tài),因為它在ASP.NET?Web?Forms完成工作時起著重要的作用。假定當前處理的頁面有幾個回送。也許其中一個回送操作會?更改標簽的值。如果該標簽在第一次顯示時有一個默認值,那么在每次新的回送操作中,該控件的每次初始化都會把該值重置為默認值。然而,系統(tǒng)接著會分析視圖狀態(tài),確定這個標簽應(yīng)顯示另一個值。系統(tǒng)現(xiàn)在認識到,它處于另一個狀態(tài),于是覆蓋默認設(shè)置,把標簽設(shè)置為更新值,即文本的已改版本。

  這是在多個回送操作中保存變更的一種強大方式。然而,改變的項越多,需要跟蹤的項越多,視圖狀態(tài)信息集就越大,這可能出問題。這些信息是雙向傳遞:從服務(wù)器傳遞到客戶端,然后發(fā)送回服務(wù)器。某些情況下,作為視圖狀態(tài)的一部分傳輸?shù)男畔⒘靠赡茉黾酉螺d/上傳時間,尤其是在網(wǎng)速或帶寬有限的情況下。

  默認情況下,視圖狀態(tài)在每個控件上都啟用了。然而,開發(fā)人員可以在需要時覆蓋這些設(shè)置,例如在知道不需要了解控件以前的狀態(tài)時。也可以通過編程方式使用視圖狀態(tài)。假定一個大的數(shù)據(jù)列表有分頁和排序功能。如果要在分頁前排序,則排序條件需要存儲在某個地方,以便用于下一個回送操作。視圖狀態(tài)就是存儲這些信息的一個地方。

 

★關(guān)于WorkWin公司電腦監(jiān)控軟件★

WorkWin的使命是打造Work用途的Windows 電腦系統(tǒng),有效規(guī)范員工上網(wǎng)行為,讓老板知道員工每天在做什么(監(jiān)控包括屏幕、上網(wǎng)在內(nèi)的一舉一動),限制員工不能做什么(禁止網(wǎng)購、游戲、優(yōu)盤等)。

WorkWin基于純軟件設(shè)計,非常容易使用,無需添加或改動任何硬件,使用一臺管理機監(jiān)控全部員工機電腦。歷經(jīng)南京網(wǎng)亞十余年精心打造,此時此刻每天都有成千上萬企業(yè)電腦正在運行WorkWin,選擇WorkWin選擇“贏”。

WorkWin介紹

WorkWin監(jiān)控首頁 短視頻講解 下載免費試用版

版權(quán)所有,南京網(wǎng)亞計算機有限公司 。本文鏈接地址: ASP.NET Web Forms視圖狀態(tài)