代码之家  ›  专栏  ›  技术社区  ›  Dave Swersky

EF1.0中的快速加载

  •  2
  • Dave Swersky  · 技术社区  · 16 年前

    我有一种多对多的关系:

    应用程序-> 服务器

    IEnumerable<Applications> ,每个应用程序成员填充 Servers 由多对多关系关联的集合。

    通常这不会是个问题,但根据我的研究 必须 是应用程序和服务器之间的导航属性。我不是这样的,因为我的 Applications_Servers 联接表中包含的不仅仅是两个键。因此,应用程序和服务器之间没有直接的导航属性,这不起作用:

        var apps = (from a in context.Application.Include("Server")
                   select a).ToList();
    

    我得到一个错误,说在名为“服务器”的应用程序上没有导航属性,这是正确的,没有。

    具有 他们的服务器在这种情况下?

    1 回复  |  直到 16 年前
        1
  •  3
  •   Daniel Brückner    16 年前

    只需使用现有的导航属性。

    context
       .Application
       .Include("Applications_Servers")
       .Include("Applications_Servers.Server")
    

    这应该加载所有相关的 Applications_Servers Server 实体。