如何得到Sessionid的值

11/25/2015来源:ASP.NET技巧人气:1729

当用户向一个网站请求第一个页面时,用户会话启动。当第一个页面被请求时,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 );
}