首页 > 解决方案 > 从 VBScript 访问 C# .Net 数据集

问题描述

我有一个 .Net dll,它为我提供了公开的函数 RunSqlQuery()。此函数返回 System.Data.Dataset。我从 VBScript 调用这个函数。

如果我在 VBScript 中使用数据集的 C# 语法,我会收到错误“需要对象”

如何从 VBScript 中的数据集中获取数据?

.NET Dll 函数签名:

public DataSet RunSqlQuery(string query);

我的 VBScript 代码:

On Error Resume Next
Dim objSQLDB
Dim dataset
Dim retVal

set objSQLDB = CreateObject("SQLManagement.SQLServer")
retVal = objSQLDB.Connect("server-address", "username", "password")

If retVal = 0 Then
    WScript.echo "Failed to connect: " & Err.Number & " " & Err.Description 
    WScript.Quit
End If

'Any of the below two lines does not help resolving Object required error
dataset = objSQLDB.RunSqlQuery("Select 1")
'set dataset = objSQLDB.RunSqlQuery("Select 1")

If Err.Number <> 0 Then
    WScript.echo "Error running query: " & Err.Number & " " & Err.Description 
    WScript.Quit
End If

' Stuck here : how to extract data from the dataset
' Below two lines does not work
' Error message: Microsoft VBScript runtime error: Object required

WScript.echo dataset.Tables.Count
WScript.echo dataset.Tables[0].Rows.Count

objSQLDB.Disconnect
objSQLDB = Nothing

标签: c#.netdllvbscriptdataset

解决方案


推荐阅读