Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在两个datatable VB.net之间复制行_Vb.net_Datatable - Fatal编程技术网

在两个datatable VB.net之间复制行

在两个datatable VB.net之间复制行,vb.net,datatable,Vb.net,Datatable,我有两个datatable如何将目标行索引复制到同一索引中的另一个datatable,请检查下面的代码 Dim datatable1 As DataTable = GetEmployeeSummary() Dim datatable2 As DataTable = GetEmployees() For i As Integer = 0 To datatable1.Rows.Count - 1 'Datatable1.rows.count =

我有两个datatable如何将目标行索引复制到同一索引中的另一个datatable,请检查下面的代码

            Dim datatable1 As DataTable = GetEmployeeSummary()
        Dim datatable2 As DataTable = GetEmployees()
        For i As Integer = 0 To datatable1.Rows.Count - 1 'Datatable1.rows.count = datatable2.rows.count
            Select Case i
                Case 1, 5, 6, 19, 24
                    datatable2.Rows(i) = datatable2.Rows(i) 'how i could copy targeted rows index to another datatable in the same index
            End Select
        Next
如果两个表具有相同的列,则可以使用:

For i As Int32 = 0 To datatable1.Rows.Count - 1
    Select Case i
        Case 1, 5, 6, 19, 24
            If datatable2.Rows.Count - 1 >= i Then
                datatable2.Rows(i).ItemArray = datatable1(i).ItemArray
            Else
                Dim row = datatable2.Rows.Add()
                row.ItemArray = datatable1(i).ItemArray
            End If
    End Select
Next

我建议使用
ImportRow
。它会将整行复制到数据表中。因此,您的代码如下所示

    Dim datatable1 As DataTable = GetEmployeeSummary()
    Dim datatable2 As DataTable = GetEmployees()
    For i As Integer = 0 To datatable1.Rows.Count - 1 

        Select Case i
            Case 1, 5, 6, 19, 24
                datatable2.ImportRow(datatable2.Rows(i)) 
        End Select

    Next