我有一个声明如下的通用列表:
List<Dictionary<string, int>> sales;
Run Code Online (Sandbox Code Playgroud)
该字符串将是产品名称,int是销售的单位数.我想按产品名称分组并总计销售总额.所以我可以看到每种产品的销售量.
我怎么用linq做这个?
谢谢!
Mar*_*ers 10
这将为您提供结果作为字典,其中键是产品名称,值是销售的总单位数.
var result =
sales.SelectMany(d => d) // Flatten the list of dictionaries
.GroupBy(kvp => kvp.Key, kvp => kvp.Value) // Group the products
.ToDictionary(g => g.Key, g => g.Sum()); // Sum each group
Run Code Online (Sandbox Code Playgroud)