.net core EF迁移忽略数据更改

.net core EF迁移忽略数据更改,.net-core,entity-framework-migrations,.net Core,Entity Framework Migrations,我有一个初始的数据库迁移。现在我需要创建第一个增量迁移。当我使用创建第一次增量迁移时 add-migration Incremental1 它不仅包含表更改,还包含所有数据更改。例如,对于中间添加到表中的行,它包含DeleteData命令: migrationBuilder.DeleteData( table: "SystemResources", keyColumn: "Id", keyValue: 1); 是否存在仅

我有一个初始的数据库迁移。现在我需要创建第一个增量迁移。当我使用创建第一次增量迁移时

add-migration Incremental1
它不仅包含表更改,还包含所有数据更改。例如,对于中间添加到表中的行,它包含
DeleteData
命令:

migrationBuilder.DeleteData(
            table: "SystemResources",
            keyColumn: "Id",
            keyValue: 1);
是否存在仅生成表更改(添加/删除列)和忽略所有数据更改(插入数据行)的设置?

解决方案是:

  • 通过注释掉所有
    modelBuilder.Entity().HasData
    语句来禁用数据种子设定
  • 使用
    添加迁移
    创建增量迁移
  • 手动从增量迁移中删除所有
    DeleteData
    /
    InsertData
    命令
  • 运行
    更新数据库
  • 在此之后,种子数据不再是模型snapshopt(
    modelsnashot.cs
    文件)的一部分,因此不再由迁移跟踪

    这也意味着下一次增量迁移将不包含任何
    DeleteData
    /
    InsertData
    语句