实体框架计数具有带约束的子记录的父行

时间:2013-08-01 03:32:28

标签: entity-framework-5

我有父表和子表。这是一对多的关系。 我正在尝试确定一种方法来计算具有子记录的父记录的数量,该记录对子项和父项都有约束。

实施例: 计算今天创建的父记录的数量,并在地址列中具有值为true的子记录。

我完全被难倒了。

1 个答案:

答案 0 :(得分:2)

(from p in context.Parents
where p.CreatedOn.Date == DateTime.Now.Date
&& p.Children.Any(c=>c.Address != null) // or p.Children.Any(c=>c.Address == true)
select p).Count()

可能是这样的吗?

你也可以从孩子那里去,例如:

(from c in context.Child
where c.Address == true && c.Parent.CreatedOn.Date == DateTime.Now.Date
select c.Parent).Distinct().Count()

在lambda表达式中,请注意我刚刚使用了childObj.Address == true(很可能这个条件有点不同,但你应该看到这个想法。

  context.ARC_Records
                      .Where(d => (d.Signed == false || d.Signed == null) 
                            && d.ChildObject.Any(c=>c.Address == true))
                     .Count();