2010-11-22 165 views
1

我有Order对象的集合,每个Order对象中有1个或多个Card对象(在generic List object called Cards的LINQ(GROUPBY?)问题

现在我想知道卡的总数,在一个号码。

我没有得到它在一起,LINQ的智能感知只是没有让我任何意义....

回答

4

可以使用获得卡的数量

yourCollection.Sum(o => o.Cards.Count); 
+0

谢谢,就这么简单,可是没想到的它 – Michel 2010-11-22 11:07:36

2
int totalCount = orders.Sum(order => order.Cards.Count); 
1

让您拥有:

class Order 
{ 
    public List<Card> Cards { get; set; } 
} 

然后:

IEnumerable<Order> orders = .. 
int cards = orders.Sum(o => o.Cards.Count); 
2

可能卡是空的:

orders.Sum(p => p.Cards == null?0:p.Cards.Count);