我想在Datatable列上进行GroupBy,其中列的数据类型是动态的。 即。
public List<string> GetGroupBy(DataTable dt, String ColumnDatatype, String ColumnName)
{
return (from r in dt.AsEnumerable()
group r by new
{
GrpList = r.Field<ColumnDatatype>(ColumnName)
} into g
select new { g.Key.GrpList }).ToList();
}
这不能使ColumnDatatype给我错误。我正在使用框架3.5。
上面怎么办?
答案 0 :(得分:2)
您可以使用索引器代替Field<T>
,如下所示:
return (from r in dt.AsEnumerable()
group r by r[ColumnName] into g
select new { g.Key.GrpList }).ToList();