Pular para o conteúdo principal
Versão: main (dev) 🚧

Migrations

Os comandos rodam da raiz da solution. --project é onde as migrations vivem; --startup-project é onde o DI está configurado.

Aplicar

dotnet ef database update \
--project src/MyService.Infrastructure \
--startup-project src/MyService.Api

Aplique antes do primeiro run — as tabelas do Identity vivem no schema identity (sem prefixo AspNet) e o seeder não auto-migra.

Adicionar

dotnet ef migrations add <Nome> \
--project src/MyService.Infrastructure \
--startup-project src/MyService.Api \
--output-dir Persistence/Migrations

Convenções do canon

  • AuditTimestamp é [Owned] no DevPack: cada CreatedAt/UpdatedAt/DeletedAt gera duas colunas — <Nome>_UtcDateTime (datetime2) e <Nome>_LocalTimeZone (nvarchar). Nenhuma configuração manual é necessária.
  • Novas roles/permissões: estenda o catálogo em Permissions.cs, o seed em RolePermissionConfiguration.HasData e gere uma migration (Add{NewRole}).
  • A migration InitialCreate shipada pode ser removida se você for redesenhar o domínio — ver Gerar o projeto.

Próximo: Build e testes.