Отсроченное выполнение - PullRequest
       2

Отсроченное выполнение

2 голосов
/ 03 февраля 2010

Хотелось бы узнать, есть ли отложенная загрузка == отложенное выполнение?

Ответы [ 2 ]

9 голосов
/ 03 февраля 2010

Нет.

«Ленивая загрузка» обычно используется для указания того, что если у вас есть экземпляр объекта со свойством, которое ссылается на какой-либо другой объект, разыменование свойства в коде приведет к тому, что будет выполнен запрос к базе данных для материализации этого другого объекта, если он еще не загружен.

например:

var foo = Context.Foos.First();
var bar = foo.Bar; // with lazy loading, this causes a DB query for foo.Bar;

«Отложенное выполнение» обычно используется для обозначения того, что запрос к базе данных вообще не будет выдан, пока не будет повторен IQueryable.

1011 * Е.Г. *

var foos = context.Foos.Where( f => f.Id == id); // no db query ; deferred
var foo = foos.First(); // now a query is issued.
var count = foos.Count(); // another query is issued
0 голосов
/ 06 февраля 2010

Я подозреваю, что вы думаете о «отложенной загрузке» в Entity Framework 4, которая фактически совпадает с отложенной загрузкой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...