只在必要时保存服务器控件视图状态

原创 2004年10月25日 00:10:00
自动视图状态管理是服务器控件的功能,该功能使服务器控件可以在往返过程上重新填充它们的属性值(您不需要编写任何代码)。但是,因为服务器控件的视图状态在隐藏的窗体字段中往返于服务器,所以该功能确实会对性能产生影响。您应该知道在哪些情况下视图状态会有所帮助,在哪些情况下它影响页的性能。例如,如果您将服务器控件绑定到每个往返过程上的数据,则将用从数据绑定操作获得的新值替换保存的视图状态。在这种情况下,禁用视图状态可以节省处理时间。
  默认情况下,为所有服务器控件启用视图状态。若要禁用视图状态,请将控件的EnableViewState 属性设置为 false,如下面的 DataGrid 服务器控件示例所示。

<asp:datagrid EnableViewState="false" datasource="..." runat="server"/>

您还可以使用 @ Page 指令禁用整个页的视图状态。当您不从页回发到服务器时,这将十分有用:

<%@ Page EnableViewState="false" %>

  注意 @ Control 指令中也支持 EnableViewState 属性,该指令允许您控制是否为用户控件启用视图状态。
  若要分析页上服务器控件使用的视图状态的数量,请(通过将 trace="true" 属性包括在 @ Page 指令中)启用该页的跟踪并查看 Control Hierarchy 表的 Viewstate 列。有关跟踪和如何启用它的信息,请参见 ASP.NET 跟踪。


版权声明:本文为博主原创文章,未经博主允许不得转载。

视图状态机制下的IStateManager接口

视图状态机制下的IStateManager接口本文节选自《庖丁解牛:纵向切入ASP.NET 3.5控件和组件开发技术》一书       .NET框架为自定义视图状态管理提供了System.Web.UI...
  • broadview2006
  • broadview2006
  • 2009年02月18日 08:41
  • 2135

ASP.NET 状态管理(视图状态 ViewState)

无论 Web 程序框架多么先进,它都不能改变一个事实:HTTP是一种无状态协议。        每次 Web 请求后,客户端和服务器端断开,同时 ASP.NET 引擎释放页面对象。这种架构保证了...
  • dragon_ton
  • dragon_ton
  • 2015年09月27日 23:44
  • 639

.net 错误:动态加载控件时出现错误:未能加载视图状态。正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配。

.net 错误:未能加载视图状态。正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配。例如,当以动态方式添加控件时,在回发期间添加的控件必须与在初始请求期间添加的控件的类型...
  • liuyunfan
  • liuyunfan
  • 2010年08月12日 19:02
  • 2129

保存你的RCP视图状态

每当做开发的时候,你有可能在一次调试程序的过程中打开很多个编辑器,或是对Eclipse默认的视图布局不满意,手工作了一些调整。如果在工作的过程你因为有事离开或是不小心把Eclipse关掉了,不用担心...
  • soundyrose
  • soundyrose
  • 2010年05月19日 19:27
  • 932

未能加载视图状态。正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配。

在Asp.net 2.0 中,动态变化页面的控件时,会出现如下错误:能加载视图状态。正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配。例如,当以动态方式添加控件时,在回发...
  • xinleicn
  • xinleicn
  • 2009年10月17日 11:22
  • 4883

ASP.NET服务器控件之视图状态

为Web页面及其控件保持状态信息是非常有必要的。然而,由于Web应用程序创建于HTTP协议的顶层,这是一个无状态的协议,因此,保持状态信息则变得非常困难。为了解决这个问题,ASP.NET 2.0技术提...
  • High_Mount
  • High_Mount
  • 2007年03月18日 00:21
  • 735

Asp.net 2.0 页面出现“未能加载视图状态...”错误的解决办法(作者:海雅)

在Asp.net 2.0 中,动态变化页面的控件时,会出现如下错误:能加载视图状态。正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配。例如,当以动态方式添加控件时,在回发...
  • hiyavip
  • hiyavip
  • 2006年01月12日 10:23
  • 3677

sqli-labs ---- Less-2

[地址]: https://github.com/Audi-1/sqli-labs
  • u011130746
  • u011130746
  • 2014年05月31日 10:39
  • 873

巧用ASP.NET中的Web服务器控件

不知大家对ASP.NET中的Web服务器控件了解怎么样?本篇博客小编将为大家介绍一些小技巧,轻松使用控件。 我们知道Web控件分为四种:内部,复杂,列表和验证控件,那么这些控件具体都有哪些,具有什么...
  • hongwei15732623364
  • hongwei15732623364
  • 2016年07月13日 23:30
  • 403

ASP.NET服务器控件开发

利用ASP.NET 2.0技术,创建Web自定义服务器控件并不是一件轻松的事情。因为,这需要开发人员了解并能够灵活应用多种Web开发技术,例如,CSS样式表、客户端脚本语言、.NET开发语言、服务器控...
  • huang7914
  • huang7914
  • 2008年04月25日 22:38
  • 3298
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:只在必要时保存服务器控件视图状态
举报原因:
原因补充:

(最多只允许输入30个字)