Entity Framework 两边都需要关联吗?

Does Entity Framework need associations on both sides?

我有以下型号:

public class ProductGroup
{
    public int Id {get; set;}
    public string Name {get; set;}
}

public class Product
{
    public int Id {get; set;}
    public int ProductGroupId {get; set;}
    public string Name {get; set;}
    public virtual ProductGroup ProductGroup {get; set;}
}

Product 中需要 ProductGroup 的正确 CodeFirst 映射是什么?

并且在映射中,我需要为ProductGroup指定映射,还是我可以设置:

this.Property(t => t.ProductGroupId)
    .HasColumnName("productgroup_id")
    .IsRequired();

映射你想要的关系的正确方法是这样的:

this.HasRequired(p=>p.ProductGroup).WithMany().HasForeignKey(p=>p.ProductGroupId);

我假设您正在 Product 实体

的配置 class 中配置此关系