С первым подходом к базе данных Entity Framework Core, как мне отделить мою сущность от уровня инфраструктуры? - PullRequest
0 голосов
/ 21 февраля 2020

Я создаю REST API с ASP. NET Core и Entity Framework Core с подходом, основанным на базе данных, с чистой архитектурой.

Моя база данных уже создана и поддерживается командой администраторов баз данных - поэтому мне нужно использовать Entity Framework Core с подходом, основанным на базе данных, и нам нужно провести реверс-инжиниринг, используя команду Scaffold-DbContext в инфраструктуре layer.

При чистой архитектуре сущности должны быть помещены в слой Core отдельно от уровня инфраструктуры, так как мы это сделаем и как определить ваш DbContext как интерфейс.

1 Ответ

0 голосов
/ 27 февраля 2020

Я вижу два варианта:

  1. Вы принимаете зависимость от EF, помещаете сгенерированные сущности в ваш основной проект и принимаете нарушение для чистой архитектуры.

  2. Вы создаете свои собственные сущности в базовом проекте без зависимостей от EF и используете шаблон хранилища для «сопоставления» между вашими сущностями и сущностями из EF.

Альтернатива 1 проста и дешева. Альтернатива 2 дает вам независимость от EF и некоторую абстракцию для вашей команды dba. Выбирайте исходя из того, что важнее для вашего проекта.

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