【发布时间】:2011-09-28 06:40:17
【问题描述】:
我正在尝试使用 com 将数组从 c# 返回到经典 asp。 This post helped me lot,但我还是有问题:
我在c#中有以下方法:
public object[] returnStuff () {
return new object[] {'1','2','3'};
}
我的经典 ASP:
dim responseArray1
responseArray1 = RegusSoapComponent.returnStuff()
response.write("Type of Array one is " & VarType(responseArray1))
response.write("Type of Array one is " & responseArray1(1))
我的输出是:
response is Type of Array one is 8204
Microsoft VBScript 运行时错误“800a01ca”
变量使用了 VBScript 不支持的自动化类型
无论我做什么,我似乎都无法访问这个变量。
【问题讨论】:
-
尝试返回新对象[3] {'1','2','3'}; ?
-
@Gage:这在运行时不会产生任何影响。
-
@SLaks,我认为也不会,但这是我看到的他和他发布的示例之间的唯一区别。
-
@IKode “另一方面,Array 函数总是创建一个 Variants-VarType 8204 数组(即 8192 加 12)。”取自此页面brainbell.com/tutors/Visual_Basic/Arrays.htm。因此,您正在创建一系列变体。返回的数组长度是多少?
-
如果你尝试返回字符串数组怎么办?
return new object[] {"1", "2", "3"};可能出于某种原因char类型导致问题..
标签: c# asp.net com asp-classic