2013-02-11 44 views
1

我是如何在C#中使用ViewState困惑,例如什麼是使用的好處:我什麼時候需要使用ViewState的

ViewState["VST"]="Value1"; 

Lable1.Text= ViewState["VST"].ToString(); 

雖然我可以用:

string container= "Value1"; 
Lable1.Text= container; 

回答

3

你ViewState由變量組成,它們與頁面的後備一起保存,因爲它們被髮送到客戶端,客戶端將它們發送回整個頁面。

因此,如果你這樣做:

string container= "Value1"; 
Lable1.Text= container; 

那麼用戶看到的網頁,並點擊提交按鈕,您的container字符串將不存在。

然而,如果你使用ViewState的,的ViewState [「VST」]將仍然有,因爲它會被「刷新」,當用戶提交併發送頁面返回值。

更多here,也明白了ASP.NET頁面生命週期。

1

如果您想在回發之後保留值,那麼ViewState也是最佳選擇。

1

每當您的應用程序做你的控件回發當前值被一掃而光。因此,爲了讓您在頁面內存儲任何值,您可以將它們保存在ViewState中。當然,您必須首先將EnableViewState屬性設置爲true。其他信息,如果你想在跳轉到多個頁面時存儲任何值或狀態,你可以使用Session來代替。

相關問題