您正在使用IPV4(34.230.9.187)访问本站 您本次共访问本站 1 次
 用户名: 密 码: 验证码:     用QQ登录本站
首页 软件 编程 笑话 知识 公告 台风 日历 计算器 行情 简化版
文明驾车我带头,文明行路我带头,礼貌让座我带头      

【腾讯云】云产品限时秒杀,爆款1核2G云服务器,首年74元      
[公益] 节省一分零钱 献出一份爱心 温暖世间真情      
2022年 情人节 27
2022年 元宵节 28
2023年 元 旦 348
2022年 春 节 14
 
  • 本类新增
    本类热门文章
    您现在的位置:首页 >> ASP/ASP.net >> 内容
    ASP中遍历和操作Application对象的集合
    内容摘要: 为了能够正常使用,必须把它们放到服务器上的一个虚拟应用程序内,并且把所提供的global.asa文件放到该应用程序的根目录中。最简单的办法是把global.asa文件放到缺省Web网站的根目录(缺省情况下是C:/InetPub/WWWRoot)中。  对任何已有的global.asa文件重命名是一个好办法,可以在以后对该文件进行恢复。  1. 显示Appli......

    为了能够正常使用,必须把它们放到服务器上的一个虚拟应用程序内,并且把所提供的global.asa文件放到该应用程序的根目录中。最简单的办法是把global.asa文件放到缺省Web网站的根目录(缺省情况下是C:/InetPub/WWWRoot)中。

    对任何已有的global.asa文件重命名是一个好办法,可以在以后对该文件进行恢复。

    1. 显示Application集合的内容

    ASPCounter对象是StaticObjects集合的一个成员(通过<OBJECT>元素进行定义),但是其余部份(由Server.CreateObject实例化)是Contents集合的成员。

    可以看到使用global.asa例子网页放到这些集合中的值,这在前面已经看到:

    以下为引用的内容:

    <!-- Declare instance of the ASPCounter component with

    application-level scope //-->

    <OBJECT ID=”ASPCounter” RUNAT=”Server” SCOPE=”Applicatoin”

    PROGID=”MSWC.Counters”>

    </OBJECT>

    ...

    ...

    <SCRIPT LANGUAGE=”VBScript” RUNAT=”Server”>

    Sub Application_onStart()

    ‘Create an instance of an ADO Connection with application-level scope

    Set Application(“ADOConnection”) = Server.CreateObject(“ADODB.Connection”)

    Dim varArray(3) ‘Create a Variant array and fill it

    varArray(0) = “This is a”

    varArray(1) = “Variant array”

    varArray(2) = “stored in the”

    varArray(3) = “Application object”

    Application(“Variant_Array”) = varArray ‘Store it in thd Application

    Application(“Start_Time”) = CStr(Now) ‘Store the date/time as a string

    Application(“Visit_Count”) = 0 ‘Set counter variable to zero

    End Sub

    ...

    ...

    </SCRIPT>

    (1) 遍历Contents集合的代码

    为了遍历Contents集合,可使用一个For Each ... Next结构。集合中的每一项可以是一个简单的Variant类型变量、一个Variant数组或者一个对象的引用。因为需要对每种类型的值进行不同的处理,所以就不得不对每一个进行检查来判别其类型。

    在VBScript中可使用VarType函数完成这个工作。这里使用IsObject和IsArray函数代替:

    以下为引用的内容:

    For Each objItem in Application.Contents

    If IsObject(Application.Contents(objItem)) Then

    Response.Write “Object reference: ‘” & objItem & “’

    ElseIf IsArray(Application.Contents(objItem)) Then

    Response.Write “Array: ‘” & objItem & “’ contents are:

    VarArray = Application.Contents(objItem)

    ‘Note: the following only works with a one-dimensional array

    For intLoop = 0 To UBound(varArray)

    Response.Write “ Index(“ & intLoop & “) = “ & _

    VarArray(intLoop) & “

    Next

    Else

    Response.Write “Variable: ‘” & objItem & “’ = “ _

    & Application.Contents(objItem) & “

    End If

    Next

    注意程序如何从Application对象检索该数组。将其分配给一个局部(Variant)变量,使用下面的语句:

    varArray = Application.Contents(objItem)

    使用UBound函数可以查找出数组的大小(元素的数量),这个值可以作为遍历的终止条件:

    For intLoop = 0 UBound(varArray)

    这个例子是一维数组,并将只显示这样的一个数组的内容。可根据需要编辑代码以处理多维数组,例如:

    以下为引用的内容:

    For intLoop = 0 To UBound(varArray)

    IntNumberOfDimensions = UBound(varArray, 1)

    For intDimension = 0 To intNumberOfDimensions

    Response.Write “ Index(“ & intLoop & “) = “ _

    & varArray(intLoop, intDimension)

    Next

    Response.Write “”

    Next

    版权声明:本内容来源于网络,如有侵犯您的版权,请联系站长,本站收到您的信息后将及时处理。
    上一篇:利用FSO取得BMP,JPG,PNG,GIF文件信息 下一篇:asp自动识别URL网址链接的函数
    发布日期:2021/6/15
    手机扫二维码直达本页
    发布时间:12:34:56
    点击:59
    录入:齐天大圣
    相关文章
    Baidu
    YiJiaCMS 6.1.0.10988 Build 21.12.28(MSSQL) 闽ICP备05000814号-1
    本空间由腾讯云(轻量应用服务器)提供,百度云加速提供加速防护

    Copyright©2000-2022