一、使用 Contents 集合保存会话信息
1、Contents 集合是使用 Session 对象定义的在 ASP 应用程序中的一组变量。这些变量的作用域为用户层,并且在整个 ASP 应用程序中都是可用的。这是Session 对象默认的集合,因此下述两种格式是等价的:
Session.Contents("变量名")
Session("变量名")
其中,“变量名”是需要操作的 Session 变量名称。
2、实例代码(1.asp):使用 Session 对象编写一个简单的计数器程序。<html><head><title>使用 Session 变量</title></head><body><center><p>使用 Session 变量<p></center><%Session.Contents("counter")=Session.Contents("counter")+1%><center><font size=6 face=方正舒体 color=blue>您是第<%=Session.Contents("counter")%>次来访!</font></center></body></html>
二、使用StaticObjects 集合保存会话信息
StaticObjects 集合包含 Session 对象中用 OBJECT 标记创建的所有对象。
1、StaticOBjects 集合的语法格式:Session.StaticObjects(key)其中参数 Key 指定要检索的属性。
2、创建具有会话作用域的对象:
在 global.asa 文件中,使用 OBJECT 标记并将 SCOPE 属性设置为 “Session" 可以创建有会话作用域的对象。例如:<OBJECT RUNAT=”Server" SCOPE="Session" ID=名称 PROGID=类名></OBJECT>
3、使用 For Each ...Next 语句遍历 StaticObjects 集合中的每一个对象
StaticObjects 集合可以用于确定对象特定属性的值,或者用于遍历集合并获取所有对象的全部属性。使用循环控制结构可以遍历 StaticObjects 集合中的关键字。脚本如下:
<%
For Each objprop in Session.StaticObjects
Response.Write objprop & ":" & Session.StaticObjects(objprop) & "<br>"
Next
%>
4、不能在Session 对象中存储内建对象。例如,下面每一行脚本都将返回错误。