如何在 vb.net 中增加数据表的名称编号

how to increase datatable's name number in vb.net

我知道,如何通过 for 语句增加整数、字符串

但我想知道如何通过 'for ~next' 语句更改名称。 例如,

    Dim row_sort1 As DataTable = rows1.CopyToDataTable
    Dim row_sort2 As DataTable = rows2.CopyToDataTable
    Dim row_sort3 As DataTable = rows3.CopyToDataTable
    Dim row_sort4 As DataTable = rows4.CopyToDataTable
    Dim row_sort5 As DataTable = rows5.CopyToDataTable
    Dim row_sort6 As DataTable = rows6.CopyToDataTable
    Dim row_sort7 As DataTable = rows7.CopyToDataTable

我有这样的编码,糟糕的编码所以我想通过 'for ~next' 语句进行更改。 我想增加数据表名称的数量(1~7) 如何体现在这个编码中。我想让我的编码更简单更有用。

我需要你的帮助 谢谢

如果我理解您的问题,请更正以下内容可能会有所帮助。

    'Note your datatables will be named Datatable0 to Datatable6
    Dim DTs(6) As DataTable
    For i = 0 To 6
        DTs(i) = New DataTable
        DTs(i).TableName = "Datatable" & i
    Next

可能有更好的方法,但这行得通!

我假设您有一个行集合,它是您要从中进行复制的母版。

我有一个类似 OSKM 的方法。最好使用列表集合而不是数组。 之后要访问集合中的表,您可以使用 Linq。

' Given master rowcollection
Dim masterRow As EnumerableRowCollection(Of DataRow)

' Empty table collection
Dim tableList As New List(Of DataTable)

For t As Integer = 0 To 6

    ' copy Master to a new table
    Dim newTable As DataTable = masterRow.CopyToDataTable()

    ' give the new table a name
    newTable.TableName = "Table" & t.ToString

    ' Add new table to collection
    tableList.Add(newTable)
Next

' Access a certain table (i.e. Table5) using Linq
Dim table5 As DataTable = tableList.FirstOrDefault(Function(x) x.TableName = "Table5")