Это может быть легко, но мне было интересно, почему всякий раз, когда вы используете процесс охотно загружаемого, .ToList()
должен использоваться после .Include()
?Зачем использовать .ToList после .Include in Eager Loading
Я знаю, что с нетерпением загрузка позволяет загружать связанные объекты вместе с основной сущностью для запросов, но зачем использовать .ToList()
?
Это для цели памяти или что-то еще?
Для example:
using (var context = new BloggingContext())
{
// Load all blogs and related posts
var blogs1 = context.Blogs
.Include(b => b.Posts)
.ToList(); // why is this needed?
}
Любое объяснение/помощь очень ценится.
http://stackoverflow.com/questions/30624700/which-linq-statements-force-entity-framework-to-return-from-the-db – BenG
Я также предлагаю проверить эту ссылку: https://msdn.microsoft.com/en-us/library/bb738633(v=vs.110).aspx. Это объясняет выполнение отложенных/немедленных запросов. –
Кто вам сказал, что вы * имеете * использовать ToList при использовании Include? Неправда. –