如何在c#中使用lambda表达式嵌套查询

时间:2014-08-06 10:48:41

标签: c# linq entity-framework lambda

我拥有包含广告系列的实体客户,每个广告系列都包含一系列广告系列。每个阶段都有可以为空的布尔属性IsApprovedByAdmin。 因此,我需要进行一个查询,它将返回每个具有属性IsApprovedByAdmin未分配为true的阶段。 怎么做到?

不工作查询的示例

DbContext.Set<Customer>().Find(customerId).Campaigns.Where(c => c.Stages.Where(s => s.IsApprovedByAdmin != true)).AsQueryable();

1 个答案:

答案 0 :(得分:2)

我想你想要SelectMany

DbContext.Set<Customer>()
.Find(customerId)
.Campaigns.SelectMany(c => c.Stages)
.Where(s => !s.IsApprovedByAdmin);