Перейти до вмісту

Міграції EF Core

Команди виконуються з теки Backend/ProjectK.Backend. Проєкт із міграціями — ProjectK.Infrastructure, стартовий — ProjectK.API.

Створити міграцію

Terminal window
dotnet ef migrations add <MigrationName> --startup-project ProjectK.API --project ProjectK.Infrastructure

Застосувати до бази

Terminal window
dotnet ef database update --startup-project ProjectK.API --project ProjectK.Infrastructure

Прибрати останню (ще не застосовану)

Terminal window
dotnet ef migrations remove --startup-project ProjectK.API --project ProjectK.Infrastructure
  • Міграція іменується за тим, що змінює в домені, а не за датою.
  • Числа enum у базі не переставляються (див. Конвенції).
  • Прибирання колонок після великого рефакторингу збирається в одну міграцію «після релізу», а не розмазується по дрібних: так self-host-інсталяції оновлюються одним кроком (див. Оновлення self-host).
  • Перед міграцією на проді — бекап (див. Backup і restore).