分组并获取FirstOrDefault LINQ.js

时间:2016-05-31 07:22:20

标签: jquery linq.js

我正在尝试在我的一个项目中使用Linq.Js。问题是我必须应用分组然后在某些列上使用sum并选择一些列的第一个。 例如

var list = [
           { a: 2, b: 4, c: 1 },
           { a: 2, b: 3, c: 7 },
           { a: 2, b: 3, c: 3 },
           { a: 4, b: 7, c: 5 },
           { a: 7, b: 3, c: 2 },
           { a: 4, b: 1, c: 5 }]; 

结果将是 a上的组,b的总和,并取c的第一个

a:2,b:10,c:1
a:7,b:3,c:2
a:4,b:1,c:5

直到现在我已经尝试过,

var aggregatedObject = Enumerable.From(claimForCalculation)
               .GroupBy("$.a", null,
                 function (key, g) {
                     var result = {
                         groupedKey: key,
                         chargedQty: g.Sum("$.b"),
                         chargedRate: g.FirstOrDefault("$.c"),
                     }
                     return result;
                 }, function (x) {  return x }).ToArray();

但它没有用。

0 个答案:

没有答案