Mam dwa bardzo podobne metody:Dlaczego moje polecenie LINQ zwraca wartość IEnumerable?
public IQueryable<User> Find(Func<User, bool> exp)
{
return db.Users.Where(exp);
}
public IQueryable<User> All()
{
return db.Users.Where(x => !x.deleted);
}
Górny jeden, nie skompiluje, mówiąc, że zwraca IEnumerable zamiast IQueryable.
Dlaczego tak jest?
Również jestem świadomy mogę dodać „AsQueryable()” na końcu i będzie działać. Jaką to jednak robi różnicę? Jakieś wyniki skuteczności? Rozumiem, że IQueryable odroczył wykonanie i takie, czy nadal będę otrzymywać tę korzyść?
Miła pani Skeet, dzięki. – qui