当用户向一个网站请求第一个页面时,用户会话启动。当第一个页面被请求时,web服务器将
asp.net_sessionID
cookie添加进用户的浏览器。
可以使用newsession属性探测新会话的启动。当新会话启动时,newsession属性返回true。
response.write(session.newsession).
每个用户会被分配一个唯一的会话ID,可以像下面这样获取会话ID的值
response.write(session.sessionid)
会话ID确保在所有当前用户会话中是唯一的。但是,随着时间的推移会话ID不保证唯一;可能将来的新会话循环使用会话ID
看:
protected void Application_Start(Object sender, EventArgs e) { Hashtable ht = new Hashtable(); Application["SessionIDs"] = ht; } protected void Session_Start(Object sender, EventArgs e) { Hashtable ht = (Hashtable) Application["SessionIDs"]; ht.Add( Session.SessionID, Session.SessionID ); } protected void Session_End(Object sender, EventArgs e) { Hashtable ht = (Hashtable) Application["SessionIDs"]; ht.Remove( Session.SessionID ); } in order to know if a session is alive we use this method: public bool IsSessionAlive( string id ) { Hashtable ht = (Hashtable) Application["SessionIDs"]; return ht.ContainsKey( id ); }