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は、DBに送られる前に述語を適用し、それを使用して要求したレコードのみを返すのでしょうか、それともすべてを返してから述語を適用するのでしょうか。

ありがとう、ウィルキー。

4

1 に答える 1

4

コードサンプルでは、​​彼はselectステートメントの一部として述語を使用し、要求されたレコードのみを選択します。

ただし、「ToList()」メソッドを使用した後、このメソッドから戻り値を取得して「Where」拡張メソッドを使用すると、すでに存在するデータに反することに注意する必要があります。想い出。

于 2012-10-26T14:20:33.643 に答える