protected void Session_End(Object sender, EventArgs e)
{
Application.Lock();
Application["online"]=(int)Application["online"]-1;
OleDbConnection con=new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Server.MapPath("db/count.mdb"));
con.Open();
OleDbCommand cmd=new OleDbCommand("update p set [count]=count+"+(int)Application["count"],con);//因为count是关键字,所以要加上[]
cmd.ExecuteNonQuery();
con.Close();
Application.UnLock(); }
为什么不把count的值存到数据库呢,我把这段代码放在一个按钮事件里,都是好使的
{
Application.Lock();
Application["online"]=(int)Application["online"]-1;
OleDbConnection con=new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Server.MapPath("db/count.mdb"));
con.Open();
OleDbCommand cmd=new OleDbCommand("update p set [count]=count+"+(int)Application["count"],con);//因为count是关键字,所以要加上[]
cmd.ExecuteNonQuery();
con.Close();
Application.UnLock(); }
为什么不把count的值存到数据库呢,我把这段代码放在一个按钮事件里,都是好使的
// 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为
// InProc 时,才会引发 Session_End 事件。如果会话模式设置为 StateServer
// 或 SQLServer,则不会引发该事件。