Просмотр модели Binding / AutoMapper - PullRequest
1 голос
/ 27 февраля 2011

Я использую Entity Framework 4 с техникой классов Service / Repository / EF4 / POCO, и у меня возник вопрос о привязке модели представления.

Когда вы сопоставляете класс с моделью представления и берете толькополя, необходимые для представления, затем сопоставьте его с новым экземпляром класса для сохранения в базе данных. Как предотвратить перезапись полей, не используемых в представлении?

1 Ответ

1 голос
/ 27 февраля 2011

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

context.MyEntities.Attach(entity);
context.ObjectStateManager.GetObjectStateEntry(entity).SetModifiedProperty("Name");

Теперь при сохранении изменений в команду «Обновить SQL» будет включено только имя свойства объекта.

При использовании репозитория проверьте пример высокого уровня, который я показал здесь .

...