Почему я не могу «сохранить как» файл Excel из моего кода Python?

У меня есть класс Python ExcelDocument , который предоставляет основные удобные методы для чтения / записи / форматирования файлов Excel, и я получаю странную ошибку в, казалось бы, простом коде Python. _flaggedDates = context.FlaggedDates.Include ("ScheduleSchools") .Include ("интервью") ....

Я обнаружил, что не понимаю, что такое отложенная загрузка и т. Д.

Во-первых, эквивалентны ли эти два утверждения:

(1) Lazy loading:
_flaggedDates = context.FlaggedDates.Include("scheduledSchools")
.Include  ("interviews").Include("partialDayAvailableBlocks")
.Include("visit").Include("events");

(2) Eager loading:
_flaggedDates = context.FlaggedDates;

Другими словами, в (1) " Включает "вызывает загрузку коллекций / свойств навигации вместе с определенной запрошенной коллекцией, независимо от того, что вы используете отложенную загрузку ... верно?

И в (2) оператор загрузит все объекты навигации даже если вы специально не запрашиваете их, потому что вы используете активную загрузку ... не так ли?

Во-вторых: даже если вы используете активную загрузку, данные не будут фактически загружены из базы данных, пока вы не «перечислите перечислимое» , как в следующем коде:

var dates = from d in _flaggedDates
            where d.dateID = 2
            select d;
foreach (FlaggedDate date in dates)
{
... etc.
}

Данные не будут фактически загружены ("перечислены") до цикла foreach ... верно? Другими словами, "переменные даты" строка определяет запрос, но запрос не выполняется до цикла foreach.

Учитывая это (если мои предположения верны), какова реальная разница между активной загрузкой и отложенной загрузкой ?? Кажется, что в любом случае данные не появляются до перечисления. Я что-то упускаю?

(Мой конкретный опыт связан с разработкой кода сначала, POCO, кстати ... хотя вопросы могут относиться к более общим.)

19
задан Cynthia 16 September 2010 в 20:30
поделиться