Для моего проекта ASP.NET Core API я плавно перехожу от стандартного подхода к шаблону репозитория (с большей частью бизнес-логики на уровне репо) к очень соблазнительному подходу DDD.Мой доменный объект всегда будет отличаться от моих сущностей, так как я поддерживаю существующее приложение с установленной базой данных.
Таким образом, процесс будет (исправьте меня, если я ошибаюсь):
- загрузить агрегат из базы данных
- выполнить работу на уровне приложения (полагаясь, конечно, на модель домена / внутреннюю логику) и
- обновить базу данных с результатом
Шаг (1) в порядке, благодаря autopper.
Шаг (2) великолепен, (наконец-то, программирование!)
Шаг (3) - моя проблема: Я все еще держу исходную модель сущности из шага (1), и у меня есть модель предметной области из шага (2), которую я могу снова преобразовать в сущности благодаря Automapper.
Вопрос: есть ли способ сравнениялица (1) и (2) и попросить EF Core 2.1 выполнить обновление (возможно, с использованием состояний)?
Я уже использую AddOrUpdate()
, что действительно хорошо для добавления или обновления, но не для удаления значенияобъекты, например.