Mam trzy kolumny w datatable: ciąg, DateTime i dziesiętne. Chcę grupować według ciągu i dziesiętnej kolumny, a dla zgrupowanych wierszy chcę zsumować wartości dziesiętne. Wiem, jak wykonać część sumaryczną, ale jak pogrupować dwie różne kolumny w datatable?C# przy użyciu linq do grupowania według wielu kolumn w datowalnym
To jest mój kod, który do tej pory nie działa prawidłowo:
var newSort = from row in objectTable.AsEnumerable()
group row by new {ID = row.Field<string>("resource_name"), time1 = row.Field<DateTime>("day_date")} into grp
orderby grp.Key
select new
{
resource_name1 = grp.Key.ID,
day_date1 = grp.Key.time1,
Sum = grp.Sum(r => r.Field<Decimal>("actual_hrs"))
};
"Kompilator myśli wszystko ect są takie same, więc każdy wiersz jest pogrupowany "- Czy masz na myśli, że wszystkie obiekty są umieszczane w jednej dużej grupie, więc kończysz na jednym elemencie z kolekcji' newSort'? – StriplingWarrior
tak, newSort zawiera tylko ostatni element datatable – Sam
Pytanie wygląda mi poprawnie. Czy możesz sprawdzić i ponownie sprawdzić swoje dane wejściowe? – StriplingWarrior