我已经进行了初始数据库迁移。现在,我需要创建第一个增量迁移。当我使用
创建第一个增量迁移时add-migration Incremental1
它不仅包含表更改,还包含所有数据更改。例如,对于在表之间添加的行,它包含DeleteData
命令:
migrationBuilder.DeleteData(
table: "SystemResources",
keyColumn: "Id",
keyValue: 1);
是否存在仅生成表更改(添加/删除的列)和忽略所有数据更改(插入的数据行)的设置?
答案 0 :(得分:0)
解决方案是:
modelBuilder.Entity<T>().HasData
语句来禁用数据播种,add-migration
创建增量迁移,DeleteData
/ InsertData
命令,update-database
。此后,种子数据不再是模型snapshopt(<Database>ModelSnapshot.cs
文件)的一部分,因此不再被迁移跟踪。
这也意味着下一次增量迁移将不包含任何DeleteData
/ InsertData
语句。