Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

O banco de dados pode ser sobreposto?

Tentei dar o Update-Database com o banco ja criado e ele veio incompleto, sem a tabela cinema, diz no erro que a tabela filmes já foi criada, pra resolver eu deletei o banco e criei um novo. funcionou, mas pensando mais pra frente se eu acabar tendo esse problema com um banco que eu não possa simplesmente apagar seria ser complicado. era pra ele criar as tabelas novas quando fizesse a migration e o update?

ainda não completei o curso não sei se tem alguma aula falando sobre isso.

1 resposta
solução!

Boa noite, tudo em paz?

Uma migration nova sempre vai mapear todas as classes do seu projeto para criar os scripts das tabelas. Isso pq nesse momento não há consulta ao banco de dados para saber quais estruturas já foram criadas. O seu banco será acessado apenas ao executar o comando update-database.

Você tem duas alternativas:

  • Modificar o método Up (chamado ao executar update-database) no arquivo de migration gerado ao executar add-migration. Este método contém todas as informações dos scripts que serão executados no seu banco de dados e você tem liberdade para modifica-lo. Todos os relacionamentos deverão ser analisados para que nenhum erro ocorra no processo, tanto nos scripts quanto nas classes. Aqui o trabalho será maior.
  • Continuar criando seus scripts manualmente e depois fazer o mapeamento das tabelas com DbSet. Essa abordagem exige um conhecimento maior de sql já que nenhuma migration será executada. A vantagem é ter maior controle sobre a estruturação dos dados.