实体类型配置映射问题对于不同的列名称

时间:2014-02-19 08:11:19

标签: code-first

假设我有以下课程

   public class A
{
    public int ID{get;set;}
    public string Name{get;set;}
    public List<B> BList{get;set;}
}
public class B
{
    public int ID{get;set;}
    public int AID{get;set;}
    public string Name{get;set;}
    public A AObject{get;set;}
}
public class AMap:EntityTypeConfiguration<A>
{
   public AMap()
   {
    this.ToTable("ATable");

    this.HasKey(x => x.ID);
   }
}
public class BMap:EntityTypeConfiguration<B>
{
   public BMap()
   {
    this.ToTable("BTable");

    this.HasKey(x => x.ID);

    this.Property(x => x.AID).IsRequired();
    this.HasRequired(x => x.AObject).WithMany(x => x.BList).HasForeignKey(x => x.AID);
   }
}

当我获得ATable的单个记录时,它应该绑定A对象中的BTable记录列表,但我将BList null设为空。

我在这里缺少什么?

1 个答案:

答案 0 :(得分:0)

你应该在导航中使用虚拟。

public class A
{
    public int ID{get;set;}
    public string Name{get;set;}
    public virtual List<B> BList{get;set;}
}
public class B
{
    public int ID{get;set;}
    public int AID{get;set;}
    public string Name{get;set;}
    public virtual A AObject{get;set;}
}