Session对象用来存取客户浏览器的数据或特定用户的信息,用户浏览Web站点时,使用Session对象可以为每个用户存储指定的数据。任何存储在用户Session对象之中的数据都可以在用户调用下一个页面时取得。一个Session对象的值对于每一个用户是相同的,对于不同用户是不同的。
Session对象的功能和Application 对象一样,都是用于记录存储网页程序的变量或对象。但与Application对象不同的是,Session对象为某一个用户私有并且有生存期。从一个用户开始访问某个特定的网页起,到用户离开为至,服务器分配给整个用户一个Session对象,用来存储该用户的信息。用户在应用程序的页面之间切换时,存储在Session对象中的变量不会被清除;而用户在应用程序中访问页面时,这些变量始终存在。Session对象实际就是服务器与客户的“对话”。
Session对象的常用属性如下:
Count 获取会话状态集合中Session对象的个数
Contents 获取对当前会话状态对象的引用
Keys 获取存储在会话中的所有值的集合
SessionID 获取用于标识会话的唯一会话ID
TimeOut 获取并设置在会话状态提供程序终止会话之前各请求之间所允许的超时期限
Mode 获取当前会话状态模式
Session对象常用集合:
Contents 用于确定指定会话项的值或者遍历Session对象的集合
StaticObjuects 确定某对象指定属性的值或遍历集合,并检索所有静态对象的所有属性
Abandon 该方法结束当前会话,并且清楚会话中的所有信息。如果用户随后访问页面,可以为它创建新会话(“重新建立”非常有用,这样用户就可以得到新的会话)
Clear 该方法清楚全部的Session对象变量,但不结束会话
Session对象的事件:
Session有两个事件:session_OnStart和Session_OnEnd.前者在创建一个Session时被触发,后者在Session结束(或者超时或者调用了Abandon方法)被调用.可以在Global.asax中为这两个事件增加处理代码.