繁体   English   中英

我什么时候需要使用ViewState

[英]When do I need to use ViewState

我对如何在C#中使用ViewState感到困惑,例如使用的好处是什么:

ViewState["VST"]="Value1";

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

我可以使用:

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

您的ViewState由与页面的回发保留的变量组成,因为它们被发送到客户端,客户端将它们与整个页面一起发回。

因此,如果您这样做:

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

然后用户看到页面并点击提交按钮,您的container字符串将不存在。

但是,如果您使用ViewState,ViewState [“VST”]仍将具有该值,因为当用户提交并发回页面时它将被“刷新”。

在这里阅读更多内容并了解ASP.NET页面生命周期。

根据文件:

ASP.NET页面框架自动使用视图状态来保留必须在回发之间保留的信息。 此信息包括控件的任何非默认值。 您还可以使用视图状态来存储特定于页面的应用程序数据。

有关详细信息,请参阅链接: http//msdn.microsoft.com/en-us/library/bb386448(v = vs.100).aspx

如果你想在回发后保持值,那么ViewState也是最好的选择。

每次您的应用程序执行回发操作时,控件的当前值都将被清除。 因此,为了在页面中存储任何值,您可以将它们保存在ViewState中。 当然,您必须首先将EnableViewState属性设置为true。 其他信息,如果您想在跳转到多个页面时存储任何值或状态,则可以使用Session。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM