我正在将我的应用程序从 Windows 窗体更改为 Windows 服务。
conn.GetSchema("Tables") 在两个代码库中的工作方式不同。
在新的代码库中,我无法返回 Excel 工作表。conn.GetSchema("Tables").Rows.Count 是 0。我已经仔细检查了所有的引用,没有什么不同。我在我的代码中找不到我认为会产生这种效果的任何其他差异。有什么想法,我还能寻找什么?
这是我的全部功能(是的,我知道我应该使用 For Each):
Private Function GetWorksheets(FileName As String) As String()
Dim rv As List(Of String)
Dim conn = New OleDb.OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;data source=" & FileName & ";Extended Properties=Excel 8.0;")
conn.Open()
For x As Integer = 0 To conn.GetSchema("Tables").Rows.Count - 1
rv.Add(conn.GetSchema("Tables").Rows(x)("TABLE_NAME"))
Next x
conn.Close()
Return rv.ToArray
End Function
谢谢,布拉德