Я использую Entity Framework 4.1 Code First, а также использую PredicateBuilder, чтобы я мог строить выражения предикатов для нескольких классов Спецификации (используя шаблон Спецификации). Я могу правильно построить предикат и применить его к DbSet, и данные, которые я получаю, - это то, что я ожидаю. Однако, что бы я ни пытался, загрузка всегда ленивая. Это простой пример того, как я создаю предикат и применяю его.
IQueryable<HairColor> hairColorQuery = Context.Set<HairColor>().AsExpandable();
Expression<Func<Parent, bool>> parentPredicate = PredicateBuilder.And(PredicateBuilder.True<Parent>(), p => p.NameLast.StartsWith("V")).Expand();
Expression<Func<HairColor, bool>> hairColorPredicate = PredicateBuilder.And(PredicateBuilder.True<HairColor>(), h => h.Parents.AsQueryable().Any(parentPredicate));
HairColor[] hairColors = hairColorQuery.Where(hairColorPredicate).Include(h => h.Parents).ToArray();
Как я уже говорил выше, я получаю данные, которые мне нужны, но игнорирует Включить.
У кого-нибудь есть идеи?