如何将具有外键的 Entity Framework 迁移应用到包含数据的表上
如何将具有外键的 Entity Framework 迁移应用到包含数据的表上
我必须将我的本地数据库应用昨天我的一个同事添加的迁移:
public partial class addDocumentFK : DbMigration { public override void Up() { CreateIndex("dbo.DocumentHierarchy", "DocumentId"); AddForeignKey("dbo.DocumentHierarchy", "DocumentId", "dbo.Document", "Id"); } public override void Down() { DropForeignKey("dbo.DocumentHierarchy", "DocumentId", "dbo.Document"); DropIndex("dbo.DocumentHierarchy", new[] { "DocumentId" }); } }
问题是我已经在我的Document
表中有数据,迁移失败了:
The ALTER TABLE statement conflicted with the FOREIGN KEY constraint "FK_dbo.DocumentHierarchy_dbo.Document_DocumentId". The conflict occurred in database "dgc_db", table "dbo.Document", column 'Id'.
有没有办法避免这个冲突,而不必清除Document
表中的所有数据?