EF7.Beta5:应答实例上的Hirachical导航返回null - 直接访问有效

时间:2015-07-27 10:23:28

标签: entity-framework-core

测试了两个类的简单层次结构:

public class Company
    {
        public int Id { get; set; }
        public string Name { get; set; }
        ...
        public List<Department> Departments { get; set; }
    }

添加了两个

实例
  public class Department
    {
        public int Id { get; set; }
        public string Name { get; set; }
        ...
        public Company Company { get; set; }
    }

myContext.Company循环中的访问foreach有效。 myContext.Departments循环中的访问foreach有效。 刚刚创建了数据库条目 - 甚至是层次导航工作。

BUT 尝试访问(程序重启后)加载的Company.Departments - Departmentsnull

我的期望是错误的 - 在任何情况下通过直接导航让所有前者添加Departments? 要么 这是一个“待修复的特征”吗?

1 个答案:

答案 0 :(得分:0)

EF7中尚未实现延迟加载。如果已加载相关实体,则将修复导航属性。如果不是,导航属性将为null,除非您加载它们。要么热切地......

    <svrl:failed-assert test="if (not(@duration) and not(child::dash:SegmentTimeline)) then false() else true()"
location="/*[local-name()='MPD' and namespace-uri()='urn:mpeg:dash:schema:mpd:2011']/*[local-name()='Period' and namespace-uri()='urn:mpeg:dash:schema:mpd:2011']/*[local-name()='AdaptationSet' and namespace-uri()='urn:mpeg:dash:schema:mpd:2011']/*[local-name()='SegmentTemplate' and namespace-uri()='urn:mpeg:dash:schema:mpd:2011']">

......或明确地说。

var companies = db.Companies.Include(c => c.Departments);