EntityFramework: Как НЕ обновлять связанные объекты? - PullRequest
0 голосов
/ 05 апреля 2011

Например, у меня есть отношение Клиент - Заказы (1 - N).

Таким образом, каждая сущность Order имеет навигационное свойство Customer. Если я просто сохраню Order в БД, этот объект тоже будет обновлен в БД. Что я должен сделать, чтобы предотвратить обновление Клиента в БД, если я обновлю Заказ?

Спасибо

1 Ответ

3 голосов
/ 05 апреля 2011

Entity Framework обновит все измененные объекты, которые являются частью определенного контекста. Это означает, что каждый объект, который был добавлен, обновлен или удален, будет зафиксирован как часть одной транзакции при вызове SaveChanges();. Нет способа сохранить только подмножество этих объектов.

Если вы обнаружите, что сущность сохраняется, когда вы считаете, что это не нужно, то вы, вероятно, выполняете какое-то изменение (возможно, непреднамеренное обновление, устанавливая значение свойства). Дважды проверьте код, чтобы убедиться, что вы не добавляете, не модифицируете и не удаляете Customer, как это происходит где-то.

Если вы не верите этому, опубликуйте свой код, и мы посмотрим, что происходит.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...