#wcf #entity-framework-4.1 #dto
#wcf #entity-framework-4.1 #dto
Вопрос:
Я пытаюсь создать пользовательский механизм отслеживания изменений для Entity Framework 4.1 в моем проекте из-за использования DTO и служб WCF.
У меня есть 2 варианта, когда дело доходит до обновления ситуации
-
Я могу просто отправить все поля объекта в базу данных в качестве обновления, хотя ни одно поле данных не изменилось.(один вызов базы данных может быть избыточным действием)
-
Получить предыдущие данные из базы данных и сравнить с обновленными, объединить изменения и отправить в базу данных. (минимум два вызова базы данных стоимость операции слияния)
Какой наилучший подход выбрать, когда мы думаем о производительности, и если второй выбор, есть ли какие-либо инструменты, помощники для автоматического объединения изменений для меня?
Ответ №1:
Для выполнения этой работы вы можете использовать свою любимую платформу генерации прокси. Недавно я разработал систему отслеживания отмен / повторов и изменений для MongoDB. Я использовал mixins и создал завернутый прокси-тип для каждого типа сущности во время выполнения. поэтому всякий раз, когда вы извлекаете документ из mongodb, он возвращает экземпляр этого типа прокси.