2
我對以下FindBy和FindByExp函數中的底層機制有點困惑。我明白FindyByExp將在數據庫端執行謂詞。但是FindBy函數呢?它是否從數據庫中獲取所有對象並首先將它們加載到內存中,然後執行謂詞?LINQ中的IEnumable和IQueryable「Where」子句之間的區別
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>();
}