, если вы действительно хотите использовать массивы, вы можете попробовать что-то вроде:
Dim data(,,) As String
ReDim data(10, 10, 10) ' three dimensions
For i As Integer = 0 To data.GetUpperBound(0)
For j As Integer = 0 To data.GetUpperBound(1)
For k As Integer = 0 To data.GetUpperBound(2)
' do your stuff here
Next
Next
Next
Но, почему бы не использовать объект и список вместо этого? что-то вроде:
Public Class MyFile
Property Name As String
Property ArrivalTime As DateTime
Property EndTime As DateTime
End Class
' then store the data in a list(of MyFile):
Public Class Test
Sub LoadingData()
Dim myData = New List(Of MyFile)
Using conn As New SqlClient.SqlConnection("your connection string here")
Using cmd As New SqlClient.SqlCommand()
cmd.Connection = conn
cmd.CommandText = "SELECT top 100 Name, ArrivalTime, EndTime FROM yourTable"
conn.Open()
Using rdr As SqlClient.SqlDataReader = cmd.ExecuteReader(CommandBehavior.CloseConnection)
Dim namePos = rdr.GetOrdinal("Name")
Dim timePos = rdr.GetOrdinal("Time")
Dim endTimePos = rdr.GetOrdinal("EndTime")
While rdr.Read()
myData.Add(New MyFile With {.Name = rdr.GetString(namePos),
.ArrivalTime = rdr.GetDateTime(timePos),
.EndTime = rdr.GetDateTime(endTimePos)})
End While
End Using
End Using
End Using
For Each item In myData
' Do whatever you like with each item
Console.WriteLine(String.Format("Name: {0}, Arrival Time: {1:yyyy-MM-dd HH:mm:ss}, End Time: {2:yyyy-MM-dd HH:mm:ss}",
item.Name,
item.ArrivalTime,
item.EndTime))
Next
End Sub
End Class
- просто быстрый образца, не испытанный, вы можете настроить в соответствии с вашими потребностями) ...
может вы плз дать Alittle больше понимания проблемы, например, текущий код у являются используя, сколько полей вы ожидаете от БД, потому что ответ Rex выглядит довольно хорошо – Manny265