.NET会话管理
状态用于存储在当前会话中,当前用户的所有控件和变量的当前值。大家都知道,网络本身是一个无状态环境,这也就意味着每次页面提交给服务器,接着返回浏览器,该页面又重新被创建、加载,除非页面提交前已经保存了所有控件的状态,否则状态就会丢失,所有的控件就会根据默认的值重新创建。
Asp.Net的强大功能之一就是能自动保持服务器控件的状态(包括其控件和Html)而无需用户编写任何代码,下面我就介绍下如何实现Asp.Net的状态管理。
在Asp.Net中有四种状态类型:
- 控件状态
该状态不能修改,只能直接访问或者被禁用。
- 视图状态
指页面及其所有控件的状态。试图状态子阿往返过程中由ASP.NET框架自动维护。当页面发送到服务器时,读取视图状态。在页面发送到浏览器时,会俯视图状态。视图状态存储在页面一个隐藏字段的状 态包中,状态被编码为一个字符串变量。由于状态通过标但字段来维护,因此这种技术适用于所有浏览 器。
如果无须维护页面视图状态,则可以通过禁用页面视图状态来提高性能。在Page指令中将 EnableViewState属性设置为false,可实现禁用页面视图状态。
另一种方法是省略表单的服务器端标签(