Linq2Sql:加入列的总和
问题描述:
我需要将Sum值加入到列表中的列表中。 例如,我有类A和B,和B具有值我要总结:Linq2Sql:加入列的总和
class A
{
//props
}
class B
{
//props
decimal ValToSum { get; set; }
}
A有A与B的关系,以使每一可以有很多烧烤加盟。
而且我从我的数据上下文的列表:
IEnumerable<A> myList;
// obtain myList from DataContext
现在我要总结从A.
喜欢的东西的加入导致每一个B的ValToSum属性:
myList.Bs.Sum(x => x.ValToSum);
如何访问与myList中相关的所有Bs列表?
答
使用SelectMany
拼合到济源一个比使用Sum
myList.SelectMany(x => x.Bs).Sum(x => x.ValToSum);
答
var sum = myList.Bs.Select(x => x.ValToSum).Sum();
+0
我没有BS系列在myList中。我在A(如A.Bs)收集了Bs集合。 – 2012-01-15 22:54:41
答
var sum = myList.SelectMany(i => i.Bs).Sum(i => i.ValToSum);
+0
完美工作。 Upvoted,但没有标记回答,因为来自Magnus的其他正确答案(更快和更多评论)。谢谢! – 2012-01-15 23:09:32
完美工作。 – 2012-01-15 23:09:41