在<;中使用Linq求和金额;列表<;字典<;字符串,int>&燃气轮机;

在<;中使用Linq求和金额;列表<;字典<;字符串,int>&燃气轮机;,linq,Linq,我有一份通用清单,声明如下: List<Dictionary<string, int>> sales; 列出销售清单; 字符串将是一个产品名称,整数表示售出的单位数。我想按产品名称分组并计算总销售额。所以我可以看到每种产品的销售量 我将如何使用linq实现这一点 谢谢 这会将结果作为一个字典提供给您,其中键是产品名称,值是售出的总数量 var result = sales.SelectMany(d => d)

我有一份通用清单,声明如下:

List<Dictionary<string, int>> sales;
列出销售清单;
字符串将是一个产品名称,整数表示售出的单位数。我想按产品名称分组并计算总销售额。所以我可以看到每种产品的销售量

我将如何使用linq实现这一点


谢谢

这会将结果作为一个字典提供给您,其中键是产品名称,值是售出的总数量

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

编译错误:“System.Collections.Generic.List”不包含“SelectMany”的定义@Pete:确保使用System.Linq时有
位于文件顶部。你正在使用.NET3.5,对吗?因为它在旧版本的.NET中不起作用。。。LINQ被添加到.NET3.5中。