<%@ Application Language="C#" %>
<script RunAt="server">
void Application_Start(object sender, EventArgs e) 
...{
// 在应用程序启动时运行的代码
Application["user_sessions"] = 0; 
}
void Application_End(object sender, EventArgs e) 
...{
// 在应用程序关闭时运行的代码
}
void Application_Error(object sender, EventArgs e) 
...{
// 在出现未处理的错误时运行的代码
}
void Session_Start(object sender, EventArgs e) 
...{
//this.Session.Timeout = 20;
// 在新会话启动时运行的代码
if (this.Session.IsNewSession == true)
...{
Application.Lock();
Application["user_sessions"] = (int)Application["user_sessions"] + 1;
Application.UnLock();
}
}
void Session_End(object sender, EventArgs e) 
...{
// 在会话结束时运行的代码。
// 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为
// InProc 时,才会引发 Session_End 事件。如果会话模式设置为 StateServer
// 或 SQLServer,则不会引发该事件。
Application.Lock();
Application["user_sessions"] = (int)Application["user_sessions"] - 1;
Application.UnLock();
}
</script>

本文介绍了 ASP.NET 应用程序的各种生命周期事件及其处理方法,包括应用程序启动、关闭、错误处理以及会话开始和结束时的操作。
6495

被折叠的 条评论
为什么被折叠?



