2013-08-11 3 views
1

Я использую Entity Framework 5.0, и я хотел бы знать, есть ли способ пометить свойство навигации как измененное.EntityFramework 5.0: маркировка свойства навигации как «измененная»

я увидел, что это может быть сделано с «нормальной» собственности, таким образом:

context.Entry(blog).Property(u => u.Name).IsModified = true 

Есть ли что-то подобное для коллекции? :

context.Entry(blog).Collection..??? 

ответ

0

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

Вы должны пометить свойства в самом объекте Collection как измененные (или объекты в Collection, если это коллекция объектов).

+0

Спасибо за ваш ответ. Проблема в том, что мне пришлось деактивировать autoDetectChanges моего EntityContainer (чтобы ускорить доступ к моей базе данных). Таким образом, изменение состояния объектов в моей коллекции недостаточно для того, чтобы структура обнаружила, что эта коллекция была изменена. Вот почему я хотел явно сказать ему, что коллекция изменилась, и что тезисы изменений должны быть сохранены в базе данных .... – jea1235

Смежные вопросы