2012-10-26 200 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」擴展方法,它將會違背已經在內存中的數據。