如何计算(总结)数据表的行值

hap*_*ile 3 c#

我有这样的数据表.我从excel表获取此数据并转换为datatable

id  workedhours  tfshours
1     3          2
2     5          5
3     .7         3
4      2         3.2
5     4.3       6.8 
Run Code Online (Sandbox Code Playgroud)

现在我需要列workhours和tfshours的总和

我怎么能实现这一点.有任何内置函数来获得列的总和

我需要在新的数据表中得到这样的结果

 workedhours   tfshours
15                20
Run Code Online (Sandbox Code Playgroud)

任何帮助都会有很大的帮助.谢谢

Chr*_*son 6

创建一个新的Datatable并使用datatable.compute方法.

        DataTable sumDataTable = new DataTable();
        sumDataTable.Columns.Add("total", typeof(string));
        sumDataTable.Columns.Add("workedhours", typeof(int));
        sumDataTable.Columns.Add("tfshours", typeof(int));

        DataRow row = sumDataTable.NewRow();
        row["total"] = "Total";
        row["workedhours"] = oldDataTable.Compute("Sum(workedhours)", "workedhours > 0");
        row["tfshours"] = oldDataTable.Compute("Sum(tfshours)", "tfshours > 0");
        sumDataTable.Rows.Add(row);
Run Code Online (Sandbox Code Playgroud)

第二个参数filter确定表达式中使用的行,但您可以只选""来选择所有行.