1
resposta

Renomear coluna do Banco sem drop.

Segui o passo-a-passo mostrado no vídeo, mas o código gerado pela migration foi diferente da do professor. Para mim apareceu a mensagem: An operation was scaffolded that may result in the loss of data. Please review the migration for accuracy. Quando abri o arquivo, apareceu como drop da coluna anterior e criar uma nova, não renameColumn, como mostra o código abaixo:

using Microsoft.EntityFrameworkCore.Migrations;

namespace Alura.Loja.Testes.ConsoleApp.Migrations
{
    public partial class Unidade : Migration
    {
        protected override void Up(MigrationBuilder migrationBuilder)
        {
            migrationBuilder.DropColumn(
                name: "Preco",
                table: "Produtos");

            migrationBuilder.AddColumn<double>(
                name: "PrecoUnitario",
                table: "Produtos",
                nullable: false,
                defaultValue: 0.0);

            migrationBuilder.AddColumn<string>(
                name: "Unidade",
                table: "Produtos",
                nullable: true);
        }

        protected override void Down(MigrationBuilder migrationBuilder)
        {
            migrationBuilder.DropColumn(
                name: "PrecoUnitario",
                table: "Produtos");

            migrationBuilder.DropColumn(
                name: "Unidade",
                table: "Produtos");

            migrationBuilder.AddColumn<double>(
                name: "Preco",
                table: "Produtos",
                type: "float",
                nullable: false,
                defaultValue: 0.0);
        }
    }
}
1 resposta

Olá Daniel, tudo bem?

Nossa, que estranho, acho que depois de usar o atalho para refatorar o código (ctrl + r + r), deveria ter vindo do jeito da aula.

No fim das contas não tem problema nenhum, porque a estrutura é a mesma.

De acordo um um outro tópico que você criou, deve ser a abordagem que a versão mais recente do EF Core deve agir diante dessa situação, onde não existem registros na tabela.

Espero ter ajudado!