鉴于以下结构...获得的值的总和Linq中
class Foo {
public string Category { get; set; }
public string Code { get; set; }
public int Quantity { get; set; }
}
我想这样,如果我提供以下使用Linq来概括这些对象按类别和代码的列表,源...
List<Foo> foos = new List<Foo>() {
new Foo {Category = @"A", Code = @"B", Quantity = 1},
new Foo {Category = @"A", Code = @"B", Quantity = 2},
new Foo {Category = @"C", Code = @"D", Quantity = 3},
new Foo {Category = @"C", Code = @"D", Quantity = 4}
};
我结束了含有列表...
Foo {Category = @"A", Code = @"B", Quantity = 3},
Foo {Category = @"C", Code = @"D", Quantity = 7}
(其中数量是原始q之和匹配对象的数量)。
我知道我需要使用group by
子句和Sum()
扩展方法的组合,我似乎无法找到正确的组合。
请注意,这个列表背后没有数据库,我这样做纯粹与对象,因此提取原始列表包括总和不是一个选项。
谢谢。
在运行时创建这些对象?或者在编译时如上所示? – 2009-11-26 11:55:06