Entity Framework 4.1 стандартная загрузка - PullRequest
13 голосов
/ 18 мая 2011

Я использую код Entity Framework 4.1 вначале.

Я хочу сделать нетерпеливую загрузку своей конфигурацией по умолчанию и тем самым избегать использования метода расширения расширения в каждом запросе выборки.

Я сделал так, как рекомендовано в MSDN, изменив простое свойство lazy в конструкторе DbContext:

public class EMarketContext : DbContext
{
    public EMarketContext()
    {
        // Change the default lazy loading to eager loading
        this.Configuration.LazyLoadingEnabled = false; 
    }
}

к сожалению, этот подход не работает.Я должен использовать метод Include для выполнения активной загрузки в каждом запросе.Есть идеи почему?Заранее спасибо.

1 Ответ

26 голосов
/ 18 мая 2011

Нет конфигурации по умолчанию для активной загрузки.Вы должны всегда определять Include или создавать какой-либо метод многократного использования, который будет включать добавление include.Например, вы можете разместить метод, аналогичный вашему контексту:

public IQueryable<MyEntity> GetMyEntities()
{
    return this.MyEntities.Include(e => e.SomeOtherEntities);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...