Migrações com EF Core
As modelagens de dados mudam de acordo com os recursos e novas funcionalidades do projeto, ou seja, quando novas entidades ou propriedades são adicionadas ou removidas o Schema de bancos de dados tem que ficar em plena sincronia com o aplicativo. Para isso, o EF Core disponibiliza um recurso de migração o Schema do banco de modo que preserve os dados dentro desse banco. Como funciona? Quando uma alteração de modelo de dados é feita o desenvolvedor pode gerar a migração descrevendo as alterações necessárias para a sincronia do banco. O próprio EF Core compara o modelo atual e o antigo para gerar os arquivos de migração, que pode ser acompanhado dentro do código fonte do próprio projeto. Criando a primeira migração No Packager Manager Console, digite: Add-Migration [Nome] A partir disso, você pode fazer que o EF Core crie o seu banco de dados e schemas a partir do arquivo gerado Update-Database Criando novas migrações Certo, agora imagine que seu projeto evoluiu e você implementou diversos atributos e entidades no seu projeto. Então o seu models do backend e o banco de dados estão fora de sincronia. Para sincronizar então é necessário subir uma nova migração. Add-Migration [Nome] E para aplicar essa migração, é necessário atualizar o banco de dados. Update-Database Aplicando isso, o nosso EF Core já entende que existe uma tabela aplicada anteriormente, já que esse fato é registrado na tabela de migrações. Reverter migração Para reverter uma migração no Entity Framework Core, você pode usar o comando dotnet ef database update seguido pelo nome da migração anterior (ou o valor 0 para voltar ao estado inicial, sem migrações aplicadas). Reverter para uma migração específica: Se quiser reverter para uma migração específica, basta passar o nome da migração desejada: Update-Database NomeDaMigracao Reverter todas as migrações (voltar ao estado inicial): Para remover todas as migrações aplicadas ao banco de dados, use 0 como parâmetro: Update-Database 0 Remover migração Depois de reverter o banco de dados, você pode remover a migração do projeto com o comando: Remove-Migration

As modelagens de dados mudam de acordo com os recursos e novas funcionalidades do projeto, ou seja, quando novas entidades ou propriedades são adicionadas ou removidas o Schema de bancos de dados tem que ficar em plena sincronia com o aplicativo.
Para isso, o EF Core disponibiliza um recurso de migração o Schema do banco de modo que preserve os dados dentro desse banco.
Como funciona?
Quando uma alteração de modelo de dados é feita o desenvolvedor pode gerar a migração descrevendo as alterações necessárias para a sincronia do banco.
O próprio EF Core compara o modelo atual e o antigo para gerar os arquivos de migração, que pode ser acompanhado dentro do código fonte do próprio projeto.
Criando a primeira migração
No Packager Manager Console, digite:
Add-Migration [Nome]
A partir disso, você pode fazer que o EF Core crie o seu banco de dados e schemas a partir do arquivo gerado
Update-Database
Criando novas migrações
Certo, agora imagine que seu projeto evoluiu e você implementou diversos atributos e entidades no seu projeto. Então o seu models do backend e o banco de dados estão fora de sincronia. Para sincronizar então é necessário subir uma nova migração.
Add-Migration [Nome]
E para aplicar essa migração, é necessário atualizar o banco de dados.
Update-Database
Aplicando isso, o nosso EF Core já entende que existe uma tabela aplicada anteriormente, já que esse fato é registrado na tabela de migrações.
Reverter migração
Para reverter uma migração no Entity Framework Core, você pode usar o comando dotnet ef database update
seguido pelo nome da migração anterior (ou o valor 0
para voltar ao estado inicial, sem migrações aplicadas).
Reverter para uma migração específica:
Se quiser reverter para uma migração específica, basta passar o nome da migração desejada:
Update-Database NomeDaMigracao
Reverter todas as migrações (voltar ao estado inicial):
Para remover todas as migrações aplicadas ao banco de dados, use 0
como parâmetro:
Update-Database 0
Remover migração
Depois de reverter o banco de dados, você pode remover a migração do projeto com o comando:
Remove-Migration