Привет, У меня есть DataTable вроде этого:Использование Linq для GroupBy и Сумма DataTable
Id Amount 1 Amount 2 Amount 3 1 2 2 2 12 4 6 4 12 6 6 5 22 7 2 1 22 7 2 2
Мне нужно, чтобы получить мой DataTable, как это:
Id Amount 1 Amount 2 Amount 3 1 2 2 2 12 10 12 9 22 14 4 3
Первоначально я пытался сделайте это в анонимном методе, но мне нужно вернуть его в другой класс, который не может быть выполнен с помощью анонимного метода. Моя вторая попытка была сделать это так, он может быть возвращен:
DataTable ddt = dt.AsEnumerable()
.Sum(g => g.Field<int>("Amount 1"))
.GroupBy(g => new { Col1 = g["ID"] })
.Select(g => g.OrderBy(r => r["ID"]).First())
.CopyToDataTable();
Этот код определенно не будете компилировать, но любая помощь/совет, если можно было бы очень ценна. Я очень новичок в linq.
Возможный дубликат [Использовать LINQ группировать данные из DataTable] (HTTP://stackoverflow.com/questions/3829129/use-linq-to-group-data-from-datatable) – MethodMan
google может быть вашим лучшим другом при правильном использовании – MethodMan
Вам нужно сделать группу сначала, затем в выбранном вами делать каждую сумму. – juharr