只在必要时保存服务器控件视图状态
来源:互联网 发布:mac版qq有远程协助吗 编辑:程序博客网 时间:2024/05/21 22:40
自动视图状态管理是服务器控件的功能,该功能使服务器控件可以在往返过程上重新填充它们的属性值(您不需要编写任何代码)。但是,因为服务器控件的视图状态在隐藏的窗体字段中往返于服务器,所以该功能确实会对性能产生影响。您应该知道在哪些情况下视图状态会有所帮助,在哪些情况下它影响页的性能。例如,如果您将服务器控件绑定到每个往返过程上的数据,则将用从数据绑定操作获得的新值替换保存的视图状态。在这种情况下,禁用视图状态可以节省处理时间。
默认情况下,为所有服务器控件启用视图状态。若要禁用视图状态,请将控件的EnableViewState 属性设置为 false,如下面的 DataGrid 服务器控件示例所示。
默认情况下,为所有服务器控件启用视图状态。若要禁用视图状态,请将控件的EnableViewState 属性设置为 false,如下面的 DataGrid 服务器控件示例所示。
<asp:datagrid EnableViewState="false" datasource="..." runat="server"/>
您还可以使用 @ Page 指令禁用整个页的视图状态。当您不从页回发到服务器时,这将十分有用:
<%@ Page EnableViewState="false" %>
注意 @ Control 指令中也支持 EnableViewState 属性,该指令允许您控制是否为用户控件启用视图状态。
若要分析页上服务器控件使用的视图状态的数量,请(通过将 trace="true" 属性包括在 @ Page 指令中)启用该页的跟踪并查看 Control Hierarchy 表的 Viewstate 列。有关跟踪和如何启用它的信息,请参见 ASP.NET 跟踪。
- 只在必要时保存服务器控件视图状态
- ASP.NET服务器控件之视图状态
- ASP.NET服务器控件之视图状态
- ASP.NET服务器控件之视图状态
- ASP.NET服务器控件之视图状态
- ASP.NET服务器控件之视图状态
- 服务器控件编程中的控件状态保存机制
- .net 错误:动态加载控件时出现错误:未能加载视图状态。正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配。
- ASP.NET服务器控件之视图状态(ViewState 初探)
- ASP.NET服务器控件之视图状态(ViewState 初探)
- 未能加载视图状态。正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配。
- 未能加载视图状态。正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配。
- 未能加载视图状态。正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配。
- Fly文件保存视图状态和保存目录树勾选状态
- Effective JavaScript Item 36 实例状态只保存在实例对象上
- 保存服务器的运行状态
- 页面中的视图状态与控件状态
- 存储位置优化——把视图状态信息保存在服务端而非客户端
- 累——加班·泡网
- 当不使用会话状态时禁用它
- 仔细选择会话状态提供程序
- 避免到服务器的不必要的往返过程
- 利用栈实现简单计算器的例子(Calculator)
- 只在必要时保存服务器控件视图状态
- 使用 HttpResponse.Write 方法进行字符串串联
- 除非有特殊的原因要关闭缓冲,否则使其保持打开
- 不要依赖代码中的异常
- 适当地使用公共语言运行库的垃圾回收器和自动内存管理
- 如果有大型 Web 应用程序,可考虑执行预批编译
- 必要时调整应用程序每个辅助进程的线程数
- 使用 HttpServerUtility.Transfer 方法在同一应用程序的页面间重定向
- 使请求管线内的所有模块尽可能高效