Asp.net ViewState—又见ViewState

HTML

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
  
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
  <title>Untitled Page</title>
</head>
<body>
  <form id="form1" runat="server">
  <div>
  <asp:DropDownList ID="ddlTest" runat="server" /><asp:Button ID="btnTest" runat="server" Text="Test"/>
  </div>
  </form>
</body>
</html>

CS

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
  
public partial class _Default : System.Web.UI.Page
{
  protected void Page_Init(object sender, EventArgs e)
  {
    ddlTest.Items.Add(new ListItem("Init", "Init"));
  }
  protected void Page_Load(object sender, EventArgs e)
  {
    ddlTest.Items.Add(new ListItem("Load", "Load"));
  }
}

最近看见有朋友说Page_Init只执行一次,我始终将信将疑,于是自己测试一下,结果发现在每次单击按钮的时候还真的不会再增加Init这样的列表项了。难道Page_Init还真的是只执行一次么?空想也不是解决办法,打个断点跟踪下吧,发现每次回发时Init是会执行的,由此可见出现这种情况是和Init无关的(她是无辜的)。真正的幕后'黑手'又会是谁呢?

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索web
, init
, using
, viewstate
, system
WebControls
,以便于您获取更多的相关知识。

时间: 2024-09-24 10:46:13

Asp.net ViewState—又见ViewState的相关文章

小议优化ASP.NET应用性能之ViewState篇

asp.net|性能|优化    如果你有在IE中查看当前浏览页面HTML源代码的习惯,你也许常会看到类似以下的代码片断: <input type="hidden" name="__VIEWSTATE" value="dDwtMzU5NzUyMTQ1O3Q8O2w8aTwwPjs+O2w8dDw7bDxpPDA+Oz47bDx0PDtsPG--   聪明的你一定会问,这是什么?有什么作用?它与本篇文章有何转折亲关系?各位看官,且听我慢慢道来.   其

ASP.NET页面中去除VIEWSTATE视图状态乱码

首先声明下这篇文章:本文章的发表于2014-10-11日,原作者和版权所有:KoalaAPI(还是本人啦),原链接:http://www.cnblogs.com/KoalaAPI/p/4018727.html(曾被删除!) 保存页的所有视图状态信息和控件状态信息. 作者在早期参与的项目中曾遇到这样的需求:基于SEO技术的开发,当因为时没有接触的MVC框架的 Razor 引擎,所以只能用ASP.NET引擎,如果使用ASP.NET引擎的服务器端控件,那么在ASP.NET页面中就会生成 __Views

ASP.NET小技巧:重写ViewState的存储目的地,以提高页面性能

asp.net|技巧|性能|页面 在 ASP.NET 中,ViewState 因为在客户端的 HTML 里占据大量的空间,并随着页面的 PostBack 反复传递于网络中,一直为人垢病.但是实际上 ViewState 可以存储到数据库.缓存等任意地方,从而避免频繁将冗长的 base64 字符串发送到客户端.这样做不但可以显著提高性能(大幅度减少了网络传输的字节数),而且如果其中的内容也不会被轻易解密和破解.因此这个方法是很有用处的. 以下写了一个简单的例子,用缓存来作为 ViewState 存储

Asp.net 有ViewState和没有ViewState的代码该怎么写?

 进来看文章的各位先对你们说声对不起了,我是带着疑问来发表这篇文章的,标题可能说的还不够明确,因为我也不知道该用什么词语来形容.如果有更好的方法,请各个大大不吝赐教! 首先我想知道,在禁用ViewState的时候,只要存在<form id="form1" runat="server">的时候,就会存在ViewState,可是很多做的比较好的网站,首页都没有ViewState,就像我们的园子一样,首页连个ViewState的影子都看不到,是怎么实现的? 别

ASP.NET ViewState 初探

asp.net     与刚接触 ASP.NET 页面的开发人员交谈时,他们通常向我提出的第一个问题就是:"那个 ViewState 到底是什么?"他们的语气中流露出的那种感觉,就象我来到一家异国情调的餐馆,侍者端上一道我从未见过的菜肴时的那种感觉 - 既疑惑不解,又充满好奇.但肯定有人认为它不错,否则就不会提供了.所以,我会先尝一尝,或许会喜欢上它,尽管它看上去的确很古怪!      对于 ViewState 也是如此,但是如果适应了它的风格,您会发现在许多情况下,您将乐于在自己的

ASP.NET ViewState 初探 (1)

ASP.NET ViewState 初探 Susan WarrenMicrosoft Corporation 2001 年 11 月 27 日 与刚接触 ASP.NET 页面的开发人员交谈时,他们通常向我提出的第一个问题就是:"那个 ViewState 到底是什么?"他们的语气中流露出的那种感觉,就象我来到一家异国情调的餐馆,侍者端上一道我从未见过的菜肴时的那种感觉 - 既疑惑不解,又充满好奇.但肯定有人认为它不错,否则就不会提供了.所以,我会先尝一尝,或许会喜欢上它,尽管它看上去的确

ASP.NET ViewState 初探 (1) 转自msdn

asp.net ASP.NET ViewState 初探 Susan WarrenMicrosoft Corporation 2001 年 11 月 27 日 与刚接触 ASP.NET 页面的开发人员交谈时,他们通常向我提出的第一个问题就是:"那个 ViewState 到底是什么?"他们的语气中流露出的那种感觉,就象我来到一家异国情调的餐馆,侍者端上一道我从未见过的菜肴时的那种感觉 - 既疑惑不解,又充满好奇.但肯定有人认为它不错,否则就不会提供了.所以,我会先尝一尝,或许会喜欢上它,

ASP.NET ViewState初探

asp.net 与刚接触 ASP.NET 页面的开发人员交谈时,他们通常向我提出的第一个问题就是:"那个 ViewState 到底是什么?"他们的语气中流露出的那种感觉,就象我来到一家异国情调的餐馆,侍者端上一道我从未见过的菜肴时的那种感觉 - 既疑惑不解,又充满好奇.但肯定有人认为它不错,否则就不会提供了.所以,我会先尝一尝,或许会喜欢上它,尽管它看上去的确很古怪! 对于 ViewState 也是如此,但是如果适应了它的风格,您会发现在许多情况下,您将乐于在自己的 ASP.NET 应

ASP.NET中的ViewState

asp.net ASP.NET中的ViewState ViewState是ASP.NET中用来保存WEB控件回传时状态值一种机制.在WEB窗体(FORM)的设置为runat="server",这个窗体(FORM)会被附加一个隐藏的属性_VIEWSTATE._VIEWSTATE中存放了所有控件在ViewState中的状态值. ViewState是类Control中的一个域,其他所有控件通过继承Control来获得了ViewState功能.它的类型是system.Web.UI.StateB