В VBA, я мог бы что-то вроде этого:разница DAO между C# и VBA наборов записей
Dim recordSet As DAO.recordSet
result = recordSet("Column Name")
Im пытается сделать то же самое в C#, однако
result = recordSet("Column Name");
не работал бы потому, что C# использует квадратные скобки для коллекций. Но это не кажется, работать как:
result = recordSet["Column Name"];
Любые идеи на C# эквивалент выше VBA кода?
EDIT: Вот полный код VBA Im пытается преобразовать, чтобы положить его в контекст
Public Function GetColumnValues(_
database As database, _
column As String, _
table As String _
) As String()
Dim sqlQuery As String
Dim recordSet As DAO.recordSet
Dim recordCount As Integer
Dim results() As String
sqlQuery = "SELECT [" + table + "].[" + column + "]" & _
"FROM [" + table + "];"
Set recordSet = database.OpenRecordset(sqlQuery)
recordSet.MoveLast
recordSet.MoveFirst
recordCount = recordSet.recordCount
ReDim results(recordCount) As String
For i = 1 To recordCount
results(i) = recordSet(column)
recordSet.MoveNext
Next i
recordSet.Close
GetColumnValues = results
End Function
Вы больше шансов получить помощь, если вы разместите на C# код, который вы пытались выполнить, вместе с любыми сообщениями об ошибках. –
Я не уверен, но, пожалуйста, попробуйте 'recordSet.Fields [" Column Name "]'; –
@DmitryDovgopoly Спасибо! он оказался recordSet.Fields ["Column Name"]. Value; Пожалуйста, отправьте ответ и я принимаю его. – MichaelTaylor3D