Отличие подходов Database First, Model First и Code First в Entity Framework заключается в следующем:
- Database First. habr.com learn.microsoft.com В случае уже имеющейся базы данных Entity Framework автоматически создаёт модель данных, состоящую из классов и свойств, соответствующих объектам базы данных (таким, как таблицы и столбцы). habr.com
- Model First. habr.com learn.microsoft.com Если базы нет, разработчик создаёт модель данных, используя дизайнер Entity Framework Visual Studio. habr.com После окончания работ над моделью дизайнер сгенерирует DDL (data definition language)-код для создания базы. habr.com
- Code First. habr.com learn.microsoft.com Вне зависимости от наличия базы разработчик создаёт код классов и свойств, соответствующих сущностям в базе, и использует этот код с Entity Framework без использования файла .edmx. habr.com
Таким образом, при подходе Database First модель генерируется на основе существующей базы данных, при Model First — модель создаётся с нуля с помощью визуального дизайнера, а при Code First — разработчик начинает с классов, которые описывают концептуальную модель, визуальная модель в этом случае отсутствует. learn.microsoft.com