|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
也不知道,我同学昨天说数据挖掘很好。EnableViewState属性的感化是唆使是不是在页哀求之间坚持视图形态。假如要坚持视图形态,则为true;不然为false。默许值为true。
假如我们未设置EnableViewState属性,那末默许情形下它的值为true.
这时候在终极天生的Page页中,.net会往主动天生的一个name=__VIEWSTATE的埋没控件中将哀求前的数据经加密后保留在这内里。偶然候,这会影响网页加载速率,由于它常常会天生很年夜一串加密字符。本章,我们具体剖析一下该属性,以便利在今后的开辟中匡助你决意是不是应当将该属性设置为false.
先做一个测试:
新建一个Page页,在aspx页中拖进一个ListBox控件与Button控件。以下:
<%@PageLanguage="C#"AutoEventWireup="true"CodeBehind="Default.aspx.cs"Inherits="WebApplication1._Default"%>
<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<htmlxmlns="http://www.w3.org/1999/xhtml">
<headrunat="server">
<title></title>
</head>
<body>
<formid="form1"runat="server">
<asp:ListBoxID="list_box"runat="server"Width="200"></asp:ListBox>
<asp:ButtonID="Button1"runat="server"Text="Button"/>
</form>
</body>
</html>
背景代码:
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Web;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
namespaceWebApplication1
{
publicpartialclass_Default:System.Web.UI.Page
{
protectedvoidPage_Load(objectsender,EventArgse)
{
}
protectedvoidButton1_Click(objectsender,EventArgse)
{
this.list_box.Items.Add(DateTime.Now.ToString());
}
}
}
我们会发明,每次点击一次Button按钮,list_box的Items汇合中就会增添一项。
假如我们将该页的EnableViewState设置为false
<%@PageLanguage="C#"AutoEventWireup="true"CodeBehind="Default.aspx.cs"Inherits="WebApplication1._Default"EnableViewState="false"%>
这时候候我们会发明,不论点击几次Button按钮,list_box的Items汇合中永久只要最新增加的一项。
这申明,我们设置了EnableViewState=false后,list_box不再保留之前静态增加的内容。
注重:在网上看到有些文章指出,当设置TextBox控件的EnableViewState=false,页面回发后TextBox控件不再显现用户在回发前输出的数据。实在该说法是毛病的,即便设置了EnableViewState=false,TextBox控件也会在回发后显现用户之前输出的数据。
总结:
EnableViewState指定在回发时是不是保留服务器控件的的静态属性与值。
EnableViewState的默许值为true,设置为false能够下降数据的传送量,我们应当在同意的情形下将该属性设置为false。
关于EnableViewState的设置按次,请参考本站EnableViewState的设置地位及优先级Java欺骗了我们那么多年,如今的多核时代,我认为它气数已尽! |
|