Model属性始终为null

时间:2013-05-26 16:52:21

标签: c# entity-framework

由于某种原因,Owner属性始终为null,我不确定是什么导致这个,因为其余的类属性加载正常。这里唯一的区别是属性类型不是原始的。

型号代码

#region : Project :
[Table("Project")]
public class Project
{
    ...   
    public UserAccount Owner { get; set; }
    ...
}

数据库中的行

ProjectID = 61
CreatedDate = 2013-05-26 17:04:07.480
ProjectName = 'test'
Owner_Username = 'someusername'
UserAccount_Username = 'someusername'

创建Context DbSet

public DbSet<Project> Projects { get; set; }

尝试检索所有者

Project _Project = _Db.Projects.FirstOrDefault(p => p.ProjectID == projectID);                
UserAccount _Owner = _Project.Owner; //<--- Null

什么可能阻止所有者对象被实例化?

1 个答案:

答案 0 :(得分:2)

如果所有者来自单独的表,那么除非您指示希望将其包含在查询结果中,否则实体框架将不会加载它。试试这个:

Project _Project = _Db.Projects.Include("Owner").FirstOrDefault(p => p.ProjectID == projectID);