2012-10-26 40 views
0

快速问题。采取下面的方法,我写我的EF库:实体框架对象集

public virtual IEnumerable<T> SelectWhere(Expression<Func<T, bool>> predicate) 
{ 
    using (CAMHS_DB db = new CAMHS_DB()) 
    { 
     return db.CreateObjectSet<T>().Where(predicate).ToList<T>(); 
    } 
} 

将EF它进入数据库之前使用我的谓语并用它来只返回我要求的记录,或将其返回的一切,然后应用谓词??

谢谢, Wilky。

回答

4

在您的代码示例中,他将使用谓词作为select语句的一部分,并仅选择要求的记录。你应该知道,在你使用“ToList()”方法之后,如果你从这个方法获取返回的值,并在其上使用“Where”扩展方法,它将会违背已经在内存中的数据。