апиху с крудами не используя EF.
Так как EF поставляет удобные инструменты для создания базы данных из ее моделей и конфигурации, то если я буду использовать Dapper , то придется это все вручную создавать (database first подход).
Исходя из этого я думаю сделать так
1) Создать SQL запросами базу
2) Запустить приложение и подключаться к базе данных, взаимодействовать с сущностями буду при помощи Dapper\ADO\linq2db.
Как видно данный подход хуже подхода с использованием EF только тем что при изменении структуры базы данных надо будет менять структуру приложения. Ведь интеграционные тесты можно спокойно делать без Entity (Создавать тестовую базу SQL командами через ADO).
Какие могут быть еще подводные камни в данном подходе?
>то если я буду использовать Dapper , то придется это все вручную создавать (database first подход) Либо посмотреть какие еще решения для миграций есть помимо EF
Я вообще не вижу ничего плохого в том что если мне потребуется изменить базу данных, то я поменяю ее SQL запросами,а потом отредактирую свое приложение
FluentMigrator & CodeFirst
Обсуждают сегодня