net中session用法

发布时间:2016-7-15 16:31:17

它将来自限定时间范围内的同一浏览器的请求标识为一个会话,当用户首次与web服务器建立连接时,服务器建立一个session,并分配一个sessionid,用来标识这个用户的唯一身份。sessionid长度是24个字符,session存储在web服务器内存中(如IIS进程),即InProc模式

什么是session

它将来自限定时间范围内的同一浏览器的请求标识为一个会话,当用户首次与web服务器建立连接时,服务器建立一个session,并分配一个sessionid,用来标识这个用户的唯一身份。sessionid长度是24个字符,session存储在web服务器内存中(如IIS进程),即InProc模式。

asp.net中sessionid的示例:

Request.Cookies["ASP.NET_sessionId"] / session.sessionID.ToString

在读取session前需要判断session是否为空,否则无法读取。session变量可以是任何有效的.net framework类型,存储对象需在定义时标注为可序列化[Serializable]

何时超时

一般在下述情况下,session会超时:

1.Timeout

2.bin目录中文件被改写

3.sessionid丢失

4.web服务器,如IIS重启