来一篇关于NET的Asp.Net之EnableViewState属性详解
也不知道,我同学昨天说数据挖掘很好。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欺骗了我们那么多年,如今的多核时代,我认为它气数已尽! 对于中小项目来说.net技术是完全可以胜任,但为什么现在大型公司或网站都选择php或java呢?就是因为微软不够开放,没有提供从硬件到应用服务器再到业务应用的整套解决方案。 市场决定一切,我个人从经历上觉得两者至少在很长时间内还是要共存下去,包括C和C++,至少从找工作就看得出来,总不可能大家都像所谓的时尚一样,追捧一门语言并应用它。 能产生和执行动态、交互式、高效率的站占服务器的应用程序。运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写。 ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码。 同时也感谢博客园给我们这个平台,也感谢博客园的编辑们做成专题引来这么多高人指点。 在调试JSP代码时,如果程序出错,JSP服务器会返回出错信息,并在浏览器中显示。这时,由于JSP是先被转换成Servlet后再运行的,所以,浏览器中所显示的代码出错的行数并不是JSP源代码的行数。 但是目前在CGI中使用的最为广泛的是Perl语言。所以,狭义上所指的CGI程序一般都是指Perl程序,一般CGI程序的后缀都是.pl或者.cgi。
页:
[1]