EF迁移:ALTER TABLE语句与FOREIGN KEY约束冲突

Sac*_*nth 11 entity-framework-5

我有这些课程

public class Bid : ...
{
   ...

   [Required]
   public virtual TraderUser Trader { get; set; }
}

public class TraderUser : ...
{
   ...
}
Run Code Online (Sandbox Code Playgroud)

然后我按以下方式更改了这些类,并添加了一个新类

public class Bid : ...
{
   ...

   [Required]
   public virtual TraderUser TraderUser { get; set; }
}

public class TraderUser : ...
{
   ...

   public int TraderCompanyId { get; set; }

   [ForeignKey("TraderCompanyId")]
   public virtual TraderCompany TraderCompany { get; set; }
}

public class TraderCompany : ...
{
   ...
}
Run Code Online (Sandbox Code Playgroud)

当我做更新数据库时,我收到以下错误

ALTER TABLE语句与FOREIGN KEY约束"FK_dbo.Bid_dbo.TraderUser_TraderUser_Id"冲突.冲突发生在数据库"LeasePlan.Development",表"dbo.TraderUser",列"Id"中.

我无法让数据库更新.任何帮助深表感谢.

Min*_*nja 32

不知道是否为时已晚,但我有同样的问题,也许这可以帮到你.

我无法从您的帖子中看到,但可能您的TraderUser表已经插入了一些行.您要完成的是创建新表TraderCompany并在TraderUser中创建指向TraderCompany表的外键关系.

在一次迁移中,您尝试为已包含数据的表创建不可为空的外键关系.

您可以尝试以下方法:

我希望这能帮到您.