代码之家  ›  专栏  ›  技术社区  ›  Ryan Michela

必须使用实体框架模型中的所有表吗?

  •  0
  • Ryan Michela  · 技术社区  · 16 年前

    我正在从Microsoft为pubs数据库的一个子集构建实体框架模型。我只对出版商和书籍感兴趣,而不是出版商和员工,但出版商和员工表之间存在一个外键约束。当我从模型中移除Employees实体时,由于外键约束,模型将不会验证。

    当数据库子集链接到具有外键约束的其他选项卡时,如何为该子集创建模型?

    因为这是一个演示,所以我从数据库中删除了有问题的表和约束,但在生产中不起作用。

    2 回复  |  直到 16 年前
        1
  •  0
  •   Craig Stuntz    16 年前

    正确的方法是将外键列公开为标量属性。有一个完整的解释和可下载的示例代码,在 this blog post. 你可能会发现这篇文章的其他部分也很有趣。

        2
  •  0
  •   Joseph Ferris    16 年前

    您可以创建相关数据的视图并将模型绑定到该视图。我不是数据库专家,但我以前工作过的一个DBA建议使用这种方法,因为她说,从数据库服务器开始,视图的强度较低。

    在3.5sp1发布之前,我们在linq-to-sql之上构建了一个DAL(没有DBML映射,但这是另一个故事),它将所有域对象映射到存储过程或视图。这样,DBA对于遵循更为设置的执行计划的调用感到高兴,并且能够在代码库之外封装数据库逻辑。