我想通过 linq 查询对数据表中的多个列进行分组。
我试过这样,
var _result = from row in tbl.AsEnumerable()
group row by new
{
id=row.Field<object>(_strMapColumn),
value=row.Field<object>(_strValueColumn),
} into g
select new
{
_strMapColumn = g.Key.id,
ToolTip = g.Sum(r => grp.Sum(r => r.Field<Double>(__strToolTip[1]))),
};
它工作正常。我的问题是我在 strToolTip 数组中有 10 个列名我想像 for 循环一样动态访问 10 个列名是否可能?
我想要这样
select new
{_strMapColumn = g.Key.id,
for(int index = 1; index <= 10; index++)
{
ToolTip+index = g.Sum(r => getDoubleValue(r.Field<Double>(__strToolTip[1])))
}
};
并且还想动态添加数据类型,请提供解决此问题的答案。linq 查询对我来说是新的。