Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Entity alterando tabelas sem perda de dados

Prof. Daniel, gostei muito de seu curso, me ajudou bastante a trabalhar com o Entity, mas um dos principais motivos que me fez acompanhar o seu curso "Mapeando um banco de dados existente" era: 1-Lidar com modificação na camada de negocio sem perder os dados das tabelas.

Todos sabemos que os sistemas estão em constantes mudanças, o entity facilita nossas vidas refletindo, nas tabelas, as mudanças realizadas nas classes . Isso é ótimo, mas e quanto a tabela já está populada? Exemplo: Ao assumir um projeto, identifiquei que uma propriedade está na classe errada, então recortei a propriedade na classe correta, muito fácil, mas como posso dizer para o Entity que ele precisa transferir os dados para a nova coluna da tabela antes do drop column?

2 respostas
solução!

Oi Eduardo,

Acredito que neste caso você precise criar uma migration com o SQL que vai setar os dados nesta nova coluna antes de dropá-la. Seria algo como:

AddColumn("tabela_certa", "coluna_nova", c => c.String());
Sql("UPDATE tabela_certa SET coluna_nova = select coluna_antiga FROM tabela_errada WHERE sua_condicao");
DropColumn("tabela_errada", "coluna_antiga", c => c.String());

Espero ter te ajudado!

Abraço!

Joviane Fernandes Jardim, era exatamente disso que eu estava precisando. Abraço!!!!