0

DataTable があり、そのテーブルには Task_Name と Hours の 2 つの列があります。

Task_Name   Hours
-----------------
Proj1        2
Proj2        3
Proj1        3
Proj1        2
Proj2        5

今私が最終的に欲しいのは、次の結果になる DataTable が欲しいということです:-

Task_Name    Hours
------------------
Proj1         7(addition of hours related to Proj1) 
Proj2         8(addition of hours related to Proj2)

私は私の質問で明確であることを願っています..どうすればそれを行うことができますか..??

4

1 に答える 1

2

LINQ to DataSetを使用できます。タスクの集計時間を計算します。

var query = from r in table.AsEnumerable()
            group r by r.Field<string>("Task_Name") into g
            select new {
               Task_Name = g.Key,
               Hours = g.Sum(x => x.Field<int>("Hours"))
            };

そして、このCopyToDataTable()拡張機能を使用して、匿名型から新しい DataTable を作成します (本当に DataTable が必要な場合)。

var result = query.CopyToDataTable();
于 2013-07-24T11:15:26.453 に答える