如何将此LINQ查询结果转换回DataTable对象?

时间:2013-10-02 17:39:45

标签: c# linq datatable

我有DataTable对象(OutputDT1),我想使用LINQ按列ConfirmedBy进行分组,然后将其转换回只有两列DataTable的{​​{1}}对象}和ConfirmBy

Count

2 个答案:

答案 0 :(得分:1)

一种简单的方法是:

DataTable dt = new DataTable();
foreach(var item in result)
{
  dt.Rows.Add(item.ConfirmedBy, item.count);
}

答案 1 :(得分:1)

使用How to: Implement CopyToDataTable<T> Where the Generic Type T Is Not a DataRow

中的解决方案

我们可以写:

var result = (from row in OutputDT1.AsEnumerable()
                group row by row.Field<string>("ConfirmedBy") into grp
                select new
                {
                    ConfirmedBy = grp.Key,
                    Count = grp.Count(),
                }).CopyToDataTable();