如何获得LINQ的总和

时间:2013-01-13 19:05:56

标签: .net linq

这是我有一张桌子:

ID  Name        Tid Quality     Quantity

40  903.02481-A.GEO 6   St3s        2   
41  903.02481-A.GEO 6   St3s        1   
42  903.02509-A.GEO 6   ST3S        1   
43  903.02942-A.GEO 6   ST3S        2   
44  903.02942-A.GEO 6   ST3S        4   
45  923.00186-B.GEO 6   ST3S        3   
46  924.03020-B.GEO 6   ST3S        1   
47  924.03021-A.GEO 6   ST3S        1   
48  924.03021-A.GEO 6   ST3S        1   
49  924.04082-C.GEO 6   ST3S        1

我需要的是:

40  903.02481-A.GEO 6   St3s        **3**   
42  903.02509-A.GEO 6   ST3S        1   
43  903.02942-A.GEO 6   ST3S        **6**   
45  923.00186-B.GEO 6   ST3S        3   
46  924.03020-B.GEO 6   ST3S        1   
47  924.03021-A.GEO 6   ST3S        **2**   
49  924.04082-C.GEO 6   ST3S        1

如何编写LINQ查询来获取此信息?

1 个答案:

答案 0 :(得分:0)

我假设你想SUM QuantityNamevar result = list .GroupBy(x => x.Name) .Select(g => new { ID = g.First().ID, Name = g.Key, Tid = g.First().Tid, Quality = g.First().Quality, Quantity = g.SUm(x => x.Quantity)) });

{{1}}