Entity framework 实体框架代码第一个FK字段

Entity framework 实体框架代码第一个FK字段,entity-framework,ef-code-first,Entity Framework,Ef Code First,我有两门课: public class Fighter { public int FighterID { get; set; } public int DivsionID { get; set; } public string Name { get; set; } //... public virtual Division Division { get; set; } } public class Division { public int Di

我有两门课:

public class Fighter
{
    public int FighterID { get; set; }
    public int DivsionID { get; set; }
    public string Name { get; set; }
    //...
    public virtual Division Division { get; set; }
}

public class Division
{
    public int DivisionID { get; set; }
    public string Name { get; set; }
    public int? FromWeight { get; set; }
    public int? ToWeight { get; set; }
    public ICollection<Fighter> Fighters { get; set; }
}
公共级战斗机
{
公共int FighterID{get;set;}
public int divisionid{get;set;}
公共字符串名称{get;set;}
//...
公共虚拟除法{get;set;}
}
公共课组
{
public int DivisionID{get;set;}
公共字符串名称{get;set;}
公共int?FromWeight{get;set;}
公共int?ToWeight{get;set;}
公共ICollection{get;set;}
}
为什么我的桌子上有部门号?我想这个设备ID应该是FK。

我写了一篇关于如何工作的文章,看看-看看实体框架是如何检测导航属性的

简言之,这是由于一项约定,即FK被命名为

<LocalPropertyName>_<ForeignIdPropertyName>
_
也看到

要使EF名称成为FK分区ID,请将以下内容添加到modelbuilder中

        modelBuilder.Entity<Fighter>()
            .HasRequired(f => f.Division)
            .WithMany(d => d.Fighters)
            .HasForeignKey(f => f.DivisionID);
modelBuilder.Entity()
.HasRequired(f=>f.Division)
.有许多(d=>d.战斗机)
.HasForeignKey(f=>f.DivisionID);

我写了一篇关于如何工作的文章,看看-看看实体框架如何检测导航属性

简言之,这是由于一项约定,即FK被命名为

<LocalPropertyName>_<ForeignIdPropertyName>
_
也看到

要使EF名称成为FK分区ID,请将以下内容添加到modelbuilder中

        modelBuilder.Entity<Fighter>()
            .HasRequired(f => f.Division)
            .WithMany(d => d.Fighters)
            .HasForeignKey(f => f.DivisionID);
modelBuilder.Entity()
.HasRequired(f=>f.Division)
.有许多(d=>d.战斗机)
.HasForeignKey(f=>f.DivisionID);

您将EF FK关联概念与数据库FK概念混为一谈,它们是不同的。EF上引入了FK关联概念,因此您可以更轻松地执行查找和数据绑定等操作(例如DropDownList数据绑定)

在表中创建的ER FK概念是Fighter类上的合成的映射,在本例中为Division属性。该表列的命名遵循EF的规则


有关EF FK关联的更多信息,请阅读。

您将EF FK关联概念与数据库FK概念混合在一起,它们不相同。EF上引入了FK关联概念,因此您可以更轻松地执行查找和数据绑定等操作(例如DropDownList数据绑定)

在表中创建的ER FK概念是Fighter类上的合成的映射,在本例中为Division属性。该表列的命名遵循EF的规则


有关EF FK协会的更多信息,请阅读。

还有更多信息-他在酒店名称中有一个打字错误(
DivisionID
而不是
DivisionID
)@DiegoMijelshon您绝对正确,他也有一个拼写错误,很好的提示:)还有更多信息-他在酒店名称中有一个打字错误(
DivisionID
而不是
DivisionID
)@DiegoMijelshon你完全正确他也有拼写错误,很好的回答:)