void Application_Start(object sender, EventArgs e) { // 在应用程序启动时运行的代码 } void Application_End(object sender, EventArgs e) { // 在应用程序关闭时运行的代码 } void Application_Error(object sender, EventArgs e) { // 在出现未处理的错误时运行的代码 } void Session_Start(object sender, EventArgs e) { // 在新会话启动时运行的代码 Application.Lock(); if (Session["User_ID"] != null) { string uid = Session["User_ID"].ToString(); User auser = new User(); auser.User_State = 1; auser.User_ID = uid; auser.User_LoginTime = DateTime.Now.ToString(); try { User_Operate.UpdateState(auser);//更改状态方法 } catch { } } Application.UnLock(); } void Session_End(object sender, EventArgs e) { // 在会话结束时运行的代码。 // 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为 // InProc 时,才会引发 Session_End 事件。如果会话模式设置为 StateServer // 或 SQLServer,则不会引发该事件。 if (Session["User_ID"] != null) { string uid = Session["User_ID"].ToString(); User auser = new User(); auser.User_State = 0; auser.User_ID = uid; auser.User_LoginTime = ""; try { User_Operate.UpdateState(auser);//更改状态方法 } catch { } } }