如何使用 Linq 从父级列表中选择复杂的子对象并对其进行分组。
我有一个订单每个订单对象都有一个订单产品变型列表(OrderLineList),以及每个订单产品变体对象有 ProductVariant,然后产品变体对象将有一个Product包含产品信息的对象。
我的目标是从订单列表中选择最受欢迎的产品并将其分组。
谁能帮我这个?
非常感谢。
您的描述很难理解,但我认为您只是想找出产品并根据它们出现的次数对它们进行排名。 SelectMany 将对此有所帮助。
var query = orderList.SelectMany( o => o.OrderLineList )
// results in IEnumerable<OrderProductVariant>
.Select( opv => opv.ProductVariant )
.Select( pv => p.Product )
.GroupBy( p => p )
.Select( g => new {
Product = g.Key,
Count = g.Count()
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)