ef core code first 模式提示"可能会导致循环或多重级联路径"问题

执行命令

dotnet ef mirations add "xxxxxx"

dotnet ef database update

 

报错

 

将 FOREIGN KEY 约束 'FK_SkuPropertyItem_Sku_SkuId' 引入表 'SkuPropertyItem' 可能会导致循环或多重级联路径。请指定 ON DELETE NO ACTION 或 ON UPDATE NO ACTION,或修改其他 FOREIGN KEY 约束。
无法创建约束。请参阅前面的错误消息

 

修改项目定义的dbContext的类,在OnModelCreating方法中加

       modelBuilder.Entity<SkuPropertyItem>()
                 .HasOne(t => t.Sku).WithMany()
                 .HasForeignKey(t => t.SkuId)
                 .OnDelete(DeleteBehavior.Restrict);

  

执行命令

dotnet ef mirations add "xxxxxx"

dotnet ef database update

还是报错。

 

因为没有把上次错误的migration删除。

 

如果抱错的话,要执行

dotnet ef mirations remove

再执行

dotnet ef mirations add "xxxxxx"

dotnet ef database update

查看是否正确迁移数据库变化

posted @ 2018-07-06 09:43  狂乱贵公子  阅读(1064)  评论(0编辑  收藏  举报