Сохраняющиеся Лениво Загруженные свойства
-
21-08-2019 - |
Вопрос
Я использую простой шаблон репозитория и у меня есть объекты с LazyList, такие как:
public class Promotion
{
public int Id { get; set; }
public string Name { get; set;}
public LazyList<Site> TargetSites { get; internal set; } // implemented as a LazyList
}
Это отлично работает для получения предметов, но мне интересно, что обычно делается для сохранения предметов?
Чтобы сохранить рекламную акцию, мне нужно сохранить список целевых сайтов только в том случае, если они были загружены в первую очередь.Это обычный шаблон с лениво загруженными элементами?Я могу найти много информации о отложенной загрузке, но очень мало о сохранении результирующих изменений в лениво загруженных объектах.
Решение
Пока связь существует в вашей модели данных, вызов context.SubmitChanges должен сохранять родительский объект, а также дочерние объекты, если они были загружены и изменены.В этом прелесть L2S (и других orm).