如何在LINQ(到数据集)中计算DataTable列的总和?

riv*_*era 33 c# linq datatable sum

我刚刚开始阅读LINQ,我想开始将它合并到我的代码中.我知道如何通过"Foreach" - 通过行或通过在特定列上执行compute.sum来计算DataTable列的总和.如何使用LINQ to DataSet进行等效操作?

Mar*_*ell 76

如果是无类型(int用正确的数据类型替换):

 var sum = table.AsEnumerable().Sum(x=>x.Field<int>(3));
Run Code Online (Sandbox Code Playgroud)

要么:

 var sum = table.AsEnumerable().Sum(x=>x.Field<int>("SomeProperty"));
Run Code Online (Sandbox Code Playgroud)

如果输入:

 var sum = table.Sum(x=>x.SomeProperty);
Run Code Online (Sandbox Code Playgroud)

  • 请注意,您需要System.Data.DataSetExtensions程序集才能使上述工作正常. (2认同)