使用:VS 2013,实体框架代码首先,ASP.NET Web项目MVC“引进国外KEY约束”
我有2个型号,在一个需要2 FK同一个表:
public class A
{
public int Id { get; set; }
public string Name { get; set; }
}
public class B
{
public int Id { get; set; }
public int Id1 { get; set; }
[ForeignKey("Id1")]
public virtual A A1 { get; set; }
public int Id2 { get; set; }
[ForeignKey("Id2")]
public virtual A A2 { get; set; }
}
enable-migration
和Add-Migration Test
后,当我运行Update-Database
,我得到这样的信息:
上表“B”将外源KEY约束“FK_dbo.B_dbo.A_Id2”可能会导致循环或多个级联p ATHS。指定ON DELETE NO ACTION或ON UPDATE NO ACTION,或修改其他FOREIGN KEY约束。
我认为,属性是多余的,cuz EF将Id1和Id2道具作为合适实体的键。 –