2011-11-05 101 views
0

在asp.net中,viewstae是客戶端變量還是服務器變量?有多少數據可以查看狀態是商店。我的意思是如果我聲明一個視圖狀態,當多個用戶訪問相同的頁面是視圖狀態數據可以衝突或不?Viewstate存儲數據?

回答

0

的ASP.NET視圖狀態是一種客戶端隱藏的控制存儲一些狀態數據的ASP.NET服務器控件。內容是Base64編碼的,可以用解碼器看到。它僅在回傳到同一頁面時可用。不同的用戶擁有自己的ViewState,因爲它是客戶端技術。您可以根據需要存儲儘可能多的數據,但會影響帶寬。一般來說,你應該小心大ViewState,因爲它也不是很友善。

你可以用它爲自己的數據是這樣的:

ViewState["myData1"] = someSerializableContent; 
ViewState["myData2"] = someSerializableContent; 

的ViewState是由哈希碼保護,以防止操縱。

編輯:基本上,你可以添加儘可能多的條目到ViewState集合,只要你想。有時最好禁用ViewState(EnableViewState屬性)。在ASP.NET 4.0中,您有更多的選項來使用ViewStateMode屬性禁用/啓用ViewState。

+0

謝謝Mr.Slfan,我可以爲每個頁面創建多少個視圖狀態 –

+0

您可以根據需要添加儘可能多的條目(請參閱答案)。 – slfan

+0

謝謝@slfan的回覆。 –