我对下面的 FindBy 和 FindByExp 函数的底层机制有点困惑。我了解 FindyByExp 将在数据库端执行谓词。但是 FindBy 函数呢?它是否从数据库中获取所有对象并首先将它们加载到内存中,然后执行谓词?
public IQueryable<T> FindBy(Func<T, bool> predicate)
{
return context.Get<T>().Where(predicate).AsQueryable<T>();
}
public IQueryable<T> FindByExp(Expression<Func<T, bool>> predicate)
{
return context.Get<T>().Where(predicate).AsQueryable<T>();
}