代码之家  ›  专栏  ›  技术社区  ›  Chris Charabaruk

实体框架的继承问题(每种类型的表)

  •  0
  • Chris Charabaruk  · 技术社区  · 17 年前

    EF Model -- Actions http://chris.charabaruk.com/system/files/images/EF+Model+Actions.png

    然而,我目前面临着两个问题。第一个问题是 Actor (a)提述 User )及 Subject (对与每种类型动作相关的类别实体的引用)是 null 在我的子类中,尽管关联的数据库列持有关联表中行的有效键。而我可以通过 ActorReference 和 SubjectReference Foo Reference.Value

    第二个问题是,具体动作类和它们相关的实体类之间的关系的交互端总是找不到任何东西。例如 Task.RelatedActions TaskAction 物体在哪里 主题 指其上的特定任务对象 RelatedActions 被称为,完全没有对象。同样,数据库中存在有效行,实体框架只是没有将它们放入对象中并将它们交给我。

    更新:

    1 回复  |  直到 15 年前
        1
  •  5
  •   Danny    17 年前

    1) 使用即时加载,以便在单个查询中检索主实体和相关实体。为此,通过向Include方法添加调用来修改查询。在上面的示例中,您可以使用以下查询:

    from a in context.Actions.Include("Actor") select a
    

    这将使用相关的Actor方法检索每个操作。

    action1.ActorReference.Load()
    

    在.Net 4.0附带的EF版本中,您还将拥有以下附加选项:

    3) 启用隐式延迟加载,以便在引用导航属性时自动检索相关实体。

    推荐文章