【发布时间】:2020-04-27 14:45:38
【问题描述】:
我遇到了迁移 EF Core 的问题。
为了使场景更清晰,我将其分配给现有数据库,该数据库旨在从现在开始使用迁移进行数据库控制。但我遇到了困难。
到目前为止我做了什么。
我从现有数据库生成了脚手架。
我添加了迁移,因此它为创建数据库生成了所有“Up”。
- 在干净的数据库中,运行 update-database。
到目前为止,一切都很完美,一切都按预期进行。但是从这一步开始,每次我生成一个新的迁移时,他(迁移)都坚持为所有表创建一个 Alter Column 语句。例如:
migrationBuilder.AlterColumn<int>(
name: "rac_n_codigo",
table: "tb_rac_raca",
nullable: false,
oldClrType: typeof(int),
oldType: "int")
.Annotation("SqlServer:Identity", "1, 1");
创建表
migrationBuilder.CreateTable(
name: "tb_rac_raca",
columns: table => new
{
rac_n_codigo = table.Column<int>(nullable: false)
.Annotation("SqlServer:Identity", "1, 1"),
rac_c_nome = table.Column<string>(unicode: false, nullable: true),
rac_d_alteracao = table.Column<DateTime>(type: "date", nullable: true),
rac_c_usuario = table.Column<string>(unicode: false, nullable: true),
rac_c_tipo = table.Column<string>(unicode: false, nullable: true),
rac_d_modificacao = table.Column<DateTime>(type: "datetime", nullable: true),
rac_c_unique = table.Column<Guid>(nullable: false, defaultValueSql: "(newid())"),
rac_d_atualizado = table.Column<DateTime>(type: "datetime", nullable: false, defaultValueSql: "(getdate())"),
rac_d_inclusao = table.Column<DateTime>(type: "datetime", nullable: false, defaultValueSql: "(getdate())")
},
constraints: table =>
{
table.PrimaryKey("PK_tb_rac_raca", x => x.rac_n_codigo);
});
【问题讨论】:
-
看起来像一个错误。可以submit a new issue吗?
-
我有一个非常相似的问题,你解决了吗?
标签: .net-core entity-framework-core entity-framework-migrations ef-core-2.2