Мне нужно сделать группу по и суммировать значения для каждого столбца. На самом деле мне удалось создать таблицу данных как:
DataTable stats = dt.AsEnumerable().GroupBy(r => r["Data"]).OrderByDescending(r => r.Key).Select(g => g.OrderBy(r => r["Data"]).First()).CopyToDataTable();
В основном мне также нужно суммировать каждое значение для каждого столбца в исходной таблице данных (dt). Пожалуйста, учтите, что, за исключением пары столбцов, я могу не знать, сколько их и каково их название. В предыдущем тесте я использовал:
var query = from stat in stats
group stat by stat.Field<string>("Data") into data
orderby data.Key
select new
{
Data = data.Key,
TotTWorked = data.Sum(stat => stat.Field<int>("Time_Work")),
TotTHold = data.Sum(stat => stat.Field<int>("Time_Hold")),
TotTAlarm = data.Sum(stat => stat.Field<int>("Time_Alarm")),
Productivity = 0,
};
Но теперь мне нужно быть более гибким, поэтому я не могу указать имя столбца, как указано выше. Любая помощь?