-2

这是我得到的一张桌子:

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 查询来得到这个?

4

1 回答 1

0

我假设您想要具有相同的SUM组:QuantityName

var 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))
     });
于 2013-01-13T19:12:18.973 回答