データテーブルには、文字列、日付時刻、および小数の3つの列があります。私は文字列と小数点の列でグループ化したい、グループ化された行のために小数点の値を合計したい。私は合計部分を行う方法を知っていますが、データテーブル内の2つの異なる列をどのようにグループ化しますか?c#linqを使用してデータテーブルの複数の列でグループ化する
これは、これまで正常に動作しない私のコードです:
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"))
};
"コンパイラはすべてのobj ectsは同じなので、すべての行がグループ化されます。 " - すべてのオブジェクトが1つの大きなグループに入れられることを意味するので、' newSort'コレクションには1つのアイテムしかありません。 – StriplingWarrior
はい、newSortにはデータテーブルの最後の要素しか含まれていません – Sam
クエリは正しく表示されます。入力を確認して再確認できますか? – StriplingWarrior