前面介绍的ViewState和Cookies是客户端状态管理的技术,从下面开始将介绍几种服务器端状态管理的技术。
1.会话管理
会话的状态和浏览器的会话相关联,当服务器打开某页面时会话就已经开始了。如果用户在20分钟内没有访问服务器,则结束会话。
开发人员可以在Global Application类中编写自定义代码,设置会话开始或结束时的运行程序。Global Application类的创建方法如下。
1)在Visual Studio中依次单击“网站”︱【添加新项】命令,在弹出的“添加新项”对话框中选择“全局应用程序类”命令,具体如图16-15所示。
图16-15 “添加新项”对话框
2)设置名称并单击“确定”按钮后即可创建完成。
在自动生成的文件内,定义了一些事件处理程序代码,具体如下:
(www.xing528.com)
这样可以将会话状态存储在HttpSessionState对象中,和当前HTTP环境相关的会话状态对象可以使用Page类的Session来访问。而在Session_Start处理程序中,可以初始化会话的变量。并且可以自定义处理事件,来完成会话状态的读取处理。
2.应用程序
如果数据需要在多个客户端共享,则可以使用应用程序状态。应用程序状态的具体使用方法和会话状态的非常类似,通过Page类的Application属性可以访问它。
看下面的代码:
经过编写上述代码后,一旦启动应用程序则会初始化应用程序变量Count,而Application_Start是global.asax的事件处理方法。当在启动网站的第一个ASP.NET页面时,就会立即调用Application_Start,并且上述代码内的Count还能够统计网站的被访问数量。
3.高速缓存
高速缓存是服务器的状态,它类似于应用程序的运行状态。高速缓存比应用程序灵活,它可以通过多种方式定义某状态何时失效。存储后的数据直接被存储在高速缓存内。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。