如果您不知道列名稱,則可以使用反射來獲取輸入對象的屬性名稱。您也可以使用屬性來過濾屬性。使用DataTable.LoadDataRow
方法作爲行加載數組。 這裏是一個如何動態去做的例子:
Dim input As New List(Of Object)
For i = 0 To 5
Console.WriteLine("enter your first name and last name:")
input.Add(New With {.First = Console.ReadLine, .Last = Console.ReadLine})
Next
Dim myData As New DataSet
Dim table = myData.Tables.Add()
table.Columns.AddRange(input.First.GetType.GetProperties.Select(Function(p) New DataColumn(p.Name)).ToArray)
input.ForEach(Function(o) table.LoadDataRow(o.GetType.GetProperties.Select(Function(p) p.GetValue(o, Nothing)).ToArray, False))
For Each row In table.Rows
Console.WriteLine("first:{0} ,Last:{1}", row(0), row(1))
Next
這就是我要找的。非常感謝你!乾杯! :-) – TimmyHoHoo