У меня есть проект, в котором я использую EFv4 для сохранения данных в моем хранилище. Это работает, как и ожидалось, для простых свойств моего объекта, но ничего не делает для связанных объектов.
Например, у меня есть объект User и связанное свойство Roles, которое представляет собой набор сущностей Role.
Если я обновлю дату последней активности пользователя и роли, назначенные пользователю в моем пользовательском интерфейсе, а затем отправлю объект пользователя обратно в репозиторий для обновления, я смогу увидеть новые значения в объекте пользователя для lastActivity и ролей, но когда я звоню:
this.ObjectContext.ApplyCurrentValues(entitySet.Name.ToString(), entity);
this.ObjectContext.SaveChanges();
сохраняются только простые свойства, такие как дата последней активности, изменения роли игнорируются.
Нужно ли что-то специальное обновить все объекты, на которые есть ссылки?
UPDATE:
Я немного больше искал в Интернете и увидел, что кто-то упомянул, что ApplyCurrentValues влияет только на скалярные свойства. Все еще не меняет мой первоначальный вопрос, но это может объяснить, почему связанные сущности не обновляются. Документация Microsoft не упоминает об этом из того, что я вижу.