上篇博文介绍了在客户端状态管理的两种方式:http://www.cnblogs.com/wolf-sun/p/3329773.html。除了在客户端上保存状态外,还可以在服务器上保存状态。使用客户端的状态,其缺点在于增加了数据在网络之间的传送。使用服务器端状态的缺点在于,服务器必须给客户端分配资源,下面详细讨论服务器端的状态管理技术。

服务器端的状态管理

  1. Session

      会话状态与浏览器会话相关。客户在服务器上第一次打开Asp.Net页面时,会话就开始了。当客户在20分钟之内没有访问服务器,会话结束,销毁session。

      可以在Global Application类(即全局应用程序类)中定义自己的代码,会话开始或结束时运行。会创建Global.asax文件。在这个文件中,定义了一些时间处理程序例程:

 1  public class Global : System.Web.HttpApplication
 2     {
 3 
 4         protected void Application_Start(object sender, EventArgs e)
 5         {
 6 
 7         }
 8 
 9         protected void Session_Start(object sender, EventArgs e)
10         {
11 
12         }
13 
14         protected void Application_BeginRequest(object sender, EventArgs e)
15         {
16 
17         }
18 
19         protected void Application_AuthenticateRequest(object sender, EventArgs e)
20         {
21 
22         }
23 
24         protected void Application_Error(object sender, EventArgs e)
25         {
26 
27         }
28 
29         protected void Session_End(object sender, EventArgs e)
30         {
31 
32         }
33 
34         protected void Application_End(object sender, EventArgs e)
35         {
36 
37         }
38     }
View Code

相关文章: