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的值存到数据库呢,我把这段代码放在一个按钮事件里,都是好使的

解决方案 »

  1.   

    // 在会话结束时运行的代码。 
            // 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为
            // InProc 时,才会引发 Session_End 事件。如果会话模式设置为 StateServer 
            // 或 SQLServer,则不会引发该事件。
      

  2.   

    我查看了Web.config  文件,sessionstate  模式设置为 InProc  对呀,可还是不行呀