从外部脚本获取公共属性的变量

时间:2011-12-09 09:13:25

标签: asp-classic vbscript

我想知道如何从外部脚本获取公共属性。测试代码在下面,并且它似乎使用此方法显示tValue的空变量。

我有没有在这里做的事情?

'External Code
Set nObj = New Test
Response.Write(nObj.tValue)

'The Class
Class Test
    Public Test1

    Public Property Get tValue
        tValue = Test1
    End Property

    Sub Loadit
        Test1="123"
    End Sub
End Class

2 个答案:

答案 0 :(得分:2)

构造函数的名称不正确。经典ASP中类的构造函数的默认名称是Class_Initialize。基于此,您的代码应该是:

'External Code
Set nObj = New Test
Response.Write("tValue = " & nObj.tValue)

'The Class
Class Test
    Private Test1

    Public Property Get tValue
        tValue = Test1
    End Property

    Public Sub Class_Initialize
        Test1 = "123a"
    End Sub 
End Class

或者,如果您希望保持班级代码的原样,则应将外部代码更改为:

'External Code
Set nObj = New Test
nObj.Loadit
Response.Write(nObj.tValue)

答案 1 :(得分:0)

没关系,因为它没有先调用Sub。

这解决了它。

 'External Code
 Set nObj = New Test

 Call nObj.Loadit

 Response.Write(nObj.tValue)