从数据库中检索时,Model包含空值?

时间:2014-11-05 17:55:38

标签: asp.net-mvc database entity-framework

假设我的模型中有三个类(省略id等):

public class Foo() {
  public Bar Bar {get; set;}
  public List<Baz> Bazs {get; set;}
}

public class Bar() {
  public List<Foo> Foos {get; set;}
}

public Baz() {

}

当我创建Foo并通过创建视图将其保存到模型时,它包含其中的所有对象就好了。但是当我从数据库中检索它时,它包含空值。存储Foo的表不包含Bar和Baz的列。但是,Bar和Baz的表格包含一列Foo_Id。哪个没问题,因为实体框架会自动处理这些映射。

但是为什么我从数据库中检索时会得到空值?我为另一个模型做了完全相同的事情,它工作正常!

1 个答案:

答案 0 :(得分:0)

在字段之前添加virtual即可。

更新型号:

public class Foo() {
  public virtual Bar Bar {get; set;}
  public virtual List<Baz> Bazs {get; set;}
}

public class Bar() {
  public virtual List<Foo> Foos {get; set;}
}

public Baz() {

}