将LINQ数据放入DataTable



我的任务是接管一些用Visual Basic编写的遗留报告,并更新一些报告,我能看到的唯一方法是使用LINQ,我用它玩得很开心,过去一周我在谷歌上花了很多时间试图解决它,但我只是错过了"什么";。

我有一个数据表,它有大约10列,我需要对两列进行分组,将分组结果放入另一个数据表格中。

到目前为止,我所拥有的是…

Dim Rep_Country_DataTable As New System.Data.DataTable
Dim Rep_Country_Group As IEnumerable = From Data_Row In Export_DataTable.Select("REP IS NOT NULL").AsEnumerable
Group Data_Row By Rep = Data_Row.Field(Of String)("REP"),
Country = Data_Row.Field(Of String)("COUNTRY") Into Group
Select Rep, Country

LINQ工作并且我可以在";Rep_Country_Group";。我现在的问题是将这些数据放入";Rep_Country_Group_DataTable;数据表,这是我搞不清楚的部分。

我很感激任何帮助,因为我知道这是我所缺少的简单的东西。

感谢那些回复的人。使用这些回复,我能够完善我的谷歌搜索,并找到了我的解决方案。

这是解决我问题的修订代码。。。

Dim Rep_Country_DataTable As New System.Data.DataTable
With DomainCountry_DataTable.Columns
.Add("REP", GetType(String))
.Add("COUNTRY", GetType(String))
End With
Dim Rep_Country_Group As IEnumerable(Of System.Data.DataRow) = (From Data_Row As System.Data.DataRow In Export_DataTable.Select("REP IS NOT NULL").AsEnumerable
Group Data_Row By Rep = Data_Row.Field(Of String)("REP"),
Country = Data_Row.Field(Of String)("COUNTRY") Into Group
Select New With {.Rep = Rep,
.Country = Country}).Select(Function(new_row)
          Dim New_DataRow As System.Data.DataRow = DomainCountry_DataTable.NewRow()
          New_DataRow("REP") = new_row.Rep
          New_DataRow("COUNTRY") = new_row.Country
          Return New_DataRow
      End Function)

最新更新