.net中session的介绍

session默认超时时间是20分钟

一般做网站在线人数都会用session来搞

在global.asax文件中的session_start事件里写

Application.Lock();
 Application["count"] = Convert.ToInt32(Application["count"]) + 1;
Application.UnLock();

在session_end事件里写

Application.Lock();
Application["count"] = Convert.ToInt32(Application["count"]) - 1;
 Application.UnLock();

要注意的是IE浏览器关闭时并不意味着你的session就没了 它还是存在的 等到超时时间到了 它才会消失

所以要想在关闭浏览器时执行session_end里的事件得用下面的方法

在网站上每个页面上写

function window.onbeforeunload()
{
   if (event.clientX>document.body.clientWidth && event.clientY<0||event.altKey)
    {
          window.open("logout.aspx");
         }
}

window.onbeforeunload() 这个事件表示在关闭浏览器之前先跳到logout.aspx页面 在logout.aspx页面的page_load()事件里写Application["count"] = Convert.ToInt32(Application["count"]) - 1; 且在页面上的body的onload()事件里写上window.close()

转载于:https://www.cnblogs.com/Tim_Liu/archive/2010/11/09/1872592.html

你可能感兴趣的:(.net中session的介绍)