У меня есть следующий класс:Как выбрать элемент с определенным элементом в свойстве iCollection?
public class Foo
{
[Key]
public int ID { get; set; }
public virtual ICollection<Cat> Cats { get; set; }
}
Я пытаюсь выбрать все объекты Foo, который содержит конкретный объект Cat. В настоящее время я делаю это:
Cat c = new Cat(10);
var lPs = Bd.Foos.Include("Cats").Where(p => SomeConditions).ToList();
var lFilter = lPs.Where(p => p.Cats.Contains(c)).ToList();
мне не нравится этот подход, потому что я приношу многих объектов из БД только фильтровать их с помощью Linq.
Есть ли лучший (более эффективный) способ?
, если это полезно, то DbContext определяется следующим образом:
modelBuilder.Entity<Foo>().HasMany(p => p.Cats).WithMany();
Это правильно! Благодаря ! – Ayorus