3
respostas

[Dúvida] Criar novo campo

Ola, como faço pra criar um novo campo no meu banco de dados

[Key]
[Required]
public int Id { get; set; }
[Required(ErrorMessage = "Nome Obrigatorio")]
public string Nome { get; set; }
[Required(ErrorMessage = "Sobrenome Obrigatorio")]
public string SobreNome { get; set; }
[Required]
public int Idade { get; set; }
[Required(ErrorMessage = "Campo email obrigatorio.")]
[EmailAddress]
public string Email { get; set; }

Estou querendo criar o campo Email, porem não esta aparecendo o campo no banco de dados quando eu faço uma nova busca. Ja criei uma nova Migrations ate gera o campo, mais no banco de dados não.

3 respostas

Olá, Diego.

Tudo bem?

A primeira coisa que precisamos verificar é se você está atualizando o banco de dados após a criação da Migration. Se você estiver usando o Entity Framework, você precisa executar o comando Update-Database no Package Manager Console após a criação da Migration. Isso irá aplicar as alterações no banco de dados.

Aqui está um exemplo de como você pode fazer isso:

  1. Adicione a nova propriedade na sua classe, como você já fez:
[Required(ErrorMessage = "Campo email obrigatorio.")]
[EmailAddress]
public string Email { get; set; }
  1. Crie uma nova Migration. No Package Manager Console, você pode usar o comando Add-Migration AddEmailField.

  2. Atualize o banco de dados executando o comando Update-Database.

Depois disso, o campo "Email" deve aparecer no seu banco de dados.

OBS(Quem faz a atualização do banco de fato é o comando Update-Database)

Se mesmo assim o campo não estiver aparecendo, pode ser que haja algum problema na configuração do seu banco de dados ou na sua Migration. Nesse caso, seria útil se você pudesse compartilhar mais detalhes sobre o erro que está ocorrendo.

Espero ter ajudado e bons estudos!

Deu certo mais tive que excluir a Migration, e criar uma nova mais acho que isso não e uma forma correta de se fazer. Seu quisesse adicionar um outro campo e só eu da esse comando "Add-Migration que já vai ser adicionado no banco, e isso mesmo.

Para atualizar o banco sempre tem que rodar o "update-database" depois do "add-migration", quem atualiza o banco de fato é o "update-database".

  1. Cria a migração:
add-migration atualizabanco
  1. Reflete no banco, atualiza o banco:
update-database