Linq:如何计算销售总价并按产品分组

时间:2010-04-11 20:32:04

标签: c# linq

我有一个订单清单,我希望根据其总销售额和数量生成产品并对其进行排名。通过@tvanfosson's帮助,我可以使用以下代码显示分组的产品详细信息,但如何计算并将总销售额数量加到每个productListResult中对象

任何人都可以帮我吗?

非常感谢。

        var productListResult = orderProductVariantListResult
                .Select(pv => pv.Product)
                .GroupBy(p => p)
                .Select(g => new 
                {
                    Product = g.Key,
                    TotalOrderCount = g.Count()
                })
                .OrderByDescending(x => x.TotalOrderCount).ToList();

1 个答案:

答案 0 :(得分:2)

这样的东西?

var productListResult = orderProductVariantListResult
        .GroupBy(pv => pv.Product)
        .Select(g => new 
        {
            Product = g.Key,
            TotalOrderCount = g.Count(),
            TotalSales = g.Sum(pv => pv.Sales),
            TotalQuantity = g.Sum(pv => pv.Quantity),
        })
        .OrderByDescending(x => x.TotalOrderCount).ToList();