Передразнивало пример заказывая право налево в соответствии с вашим комментарием
Module Module1
Sub Main()
Dim dt1 As New DataTable
dt1.Columns.Add(New DataColumn With {.ColumnName = "FirstName", .DataType = GetType(String)})
dt1.Columns.Add(New DataColumn With {.ColumnName = "MiddleName", .DataType = GetType(String)})
dt1.Columns.Add(New DataColumn With {.ColumnName = "LastName", .DataType = GetType(String)})
dt1.Rows.Add(New Object() {"Karen", "", "Payne"})
dt1.Rows.Add(New Object() {"Kevin", "S", "Gallagher"})
dt1.Rows.Add(New Object() {"Mary", "D", "Jones"})
Dim dt2 As New DataTable
dt2.Columns.Add(New DataColumn With {.ColumnName = "LastName", .DataType = GetType(String)})
dt2.Columns.Add(New DataColumn With {.ColumnName = "FirstName", .DataType = GetType(String)})
dt2.Columns.Add(New DataColumn With {.ColumnName = "MiddleName", .DataType = GetType(String)})
dt2.Rows.Add(New Object() {"Payne", "Karen", ""})
dt2.Rows.Add(New Object() {"Gallagher", "Kevin", "S"})
dt2.Rows.Add(New Object() {"Jones", "Mary", "D"})
Dim reverseList = dt1.Columns _
.Cast(Of DataColumn) _
.Select(
Function(column, index)
Return New With {.Position = index, .Name = column.ColumnName}
End Function) _
.OrderByDescending(Function(item) item.Position) _
.ToList
For Each item In reverseList
If dt2.Columns.Contains(item.Name) Then
dt2.Columns(item.Name).SetOrdinal(item.Position)
End If
Next
End Sub
End Module
Я не хочу заказывать его только в DataGridView, мне нужно заказать DataTable, потому что я привык к сравнению с другим DataTable, я не хочу сравнивать его –
Привет, Стив, я ответил бы с другим предложением если вы указали новое требование (как это было не в первоначальном вопросе), но даже тогда, когда сравнивается порядковая позиция, не имеет значения, как вы можете использовать (не зная точно, как вы сравниваете, так что это может не работать, тем более). это концептуально, чтобы получить точку в Dim result As Boolean = If (dt1.Rows (0) .Field (Of String) ("FirstName") = dt2.Rows (0) .Field (Of String) ("FirstName") , True, False) –
Извините, но вы меня не поняли, потому что мой английский не очень хорош, посмотрите, что я хочу сделать. У меня есть база данных SQL-сервера в базе данных. У меня есть таблица, в которой я купил данные в vb в DataTable1 и показываю он в DataGridView1, затем я импортирую Excel-лист в vb в DataTable2 и покажу его в DataGridView2, чтобы добавить данные в таблицу SQL, но прежде чем добавить его, я не буду сравнивать его с DataTable1, но DataTable2 не совпадает с порядком столбцов с DataTable1, я не буду переупорядочивать DataTable2 (я знаю, что могу сравнить его, не изменяя его порядок, но я хочу, чтобы это стало проще для моей команды) –