由于某种原因,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
答案 0 :(得分:2)
如果所有者来自单独的表,那么除非您指示希望将其包含在查询结果中,否则实体框架将不会加载它。试试这个:
Project _Project = _Db.Projects.Include("Owner").FirstOrDefault(p => p.ProjectID == projectID);