如何在Session中动态存取数组以及对象?

cjsh 2007-03-16 10:32:27
<%
Dim SysMenus()

Class TSysMenu
Public MenuID
Public MenuName
Public MenuImage

Public Function LoadInfoByArray(aryMenuInfo)
If IsArray(aryMenuInfo) Then
MenuID=aryMenuInfo(0)
MenuName=aryMenuInfo(1)
MenuImage=aryMenuInfo(2)
End If
LoadInfoByArray=True
End Function
End Class

Public Function GetSysMenus()
Dim i,j,k,l
Dim aryAllData
Erase SysMenus
Dim sSql,objRS
'我要在这里取缓里的数组,怎么写,要能够得到数组里的对象
FUNC_ID_STR = Session("FUNC_ID_STR")
if FUNC_ID_STR = "" then FUNC_ID_STR = 0
sSql = "select MENU_ID, MENU_NAME, MENU_IMAGE from SYS_MENU where MENU_ID in(select left(MENU_ID,2) from SYS_FUNCTION where FUNC_ID in (" &FUNC_ID_STR &"))"
Set objRS = Server.CreateObject("adodb.recordset")
objRS.open sSql,objConn,1,3
If (Not objRS.bof) And (Not objRS.eof) Then
Redim SysMenus(objRS.RecordCount)
aryAllData=objRS.GetRows(objRS.RecordCount)
objRS.Close
Set objRS=Nothing
k=UBound(aryAllData,1)
l=UBound(aryAllData,2)
For i = 0 To l
Set SysMenus(i) = New TSysMenu
SysMenus(i).LoadInfoByArray(Array(aryAllData(0,i),aryAllData(1,i),aryAllData(2,i)))
Next
End If
'输出数组对象内容
'Dim Menu
'For Each Menu in SysMenus
' If IsObject(Menu) Then
' Response.Write(Menu.MenuName)
' End If
'Next
'存到缓存里,是不是这样写
Session("DATA_SysMenus") = SysMenus
GetSysMenus=True
End Function
%>
...全文
316 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
BoyHaXin 2007-03-16
  • 打赏
  • 举报
回复
学习

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧