我有团队,每个团队都持有产品系列和产品持有分支系列。 上述每个实体都有一个字段说:IsActive 我想检索仅活动的团队,产品,分支(IsActive = true)。
System.Data.Entity.Infrastructure.DbQuery<Team> query = dbContext.Teams.AsNoTracking();
query = query.Include("Products");
query = query.Include("Products.Branches");
//Filtering Active Teams
queryMod = queryMod.Where(b => b.IsActive == active.Value);
//Filtering Active Products
queryMod = queryMod.Where(b => b.Products.Where(c => c.IsActive == active.Value).All(d=>d.IsActive==active.Value));
//Filtering Active Branches
queryMod = queryMod.Where(b => b.Products.All(c => c.Branches.All(d=>d.IsActive == active.Value) && c.IsActive == active.Value));
但看起来这并没有按预期工作。 使用此语句过滤内部组的正确形式是什么 任何方向或帮助表示赞赏!
由于