1

これを明確にしていただけますか?

public static void MyMethod()
        {
          var context= new MyModel.Entities();

          //myQuery will not have result yet
           var myQuery= from a in context.MyEntity where a.id==10 select a;

          // object is populated in myqueryResults.
           var MyqueryResults= myQuery.ToList();       
        }

遅延読み込みに関する私の理解は、プロパティは、必要になるまで入力されないということです。

質問: と言うまで、myQuery に返される値はありません.ToList()。では、これも遅延読み込みですか?

4

1 に答える 1

1

これは遅延読み込みではなく、遅延実行です。ToListを2回呼び出すと、SQLが2回実行されます。結果はどこかに「キャッシュ」されません。

実際には、ToListはトリガーではなく、シーケンスの列挙です。それが違いです。

于 2012-06-28T15:22:25.947 に答える