【问题标题】:Multiple/Single *.edmx files per database每个数据库的多个/单个 *.edmx 文件
【发布时间】:2011-02-23 12:47:13
【问题描述】:

我有一个通过 ADO.net 数据服务与数据库交互的项目。数据库很大(几乎有 150 个具有依赖关系的表)。该项目几年前开始,当时使用了 DataSet;现在我们正在转向实体模型关系。该模型正在增长,因为我们正在添加更多需要使用的表。这是管理所有这些的正确方法吗?这意味着我应该有一个 SINGLE 数据库模型文件来拥有单一数据上下文吗?

实体框架有什么缺点以及如何在大型数据库中使用实体框架(或者不应该与大型数据库一起使用?

我看到的缺点是:

  • Visual Studio 2010 开始冻结 在设计器中打开大型 XML 时(也许这不是问题,因为即使有很多表,它也不会长时间冻结)。
  • 很难在 模型(虽然 F4 + 属性窗口的对象名称组合框几乎 删除此搜索相关问题)。

PS,奇怪的是没有人回答。这个问题似乎很重要,简单来说,我将重新表述它:整体模型、大型数据库或该数据库的多个模型哪个更好?

【问题讨论】:

    标签: c# database entity-framework datacontext wcf-data-services


    【解决方案1】:

    我怀疑你没有得到很多答案,因为这不是一个大问题。即使在你的两个缺点中,你也说它们不是真正的问题。当然,EDM 可以很好地处理大型数据库。我认为数据库越大,对 ORM 解决方案的需求就越大。

    但是,您可以将一个模型拆分为多个文件,前提是这有助于您保持井井有条 - 即多个 .edmx 文件可以构成一个数据上下文。

    或者,如果您可以在逻辑上将模型拆分为可以通过接口进行交互的独立部分,而不是需要在数据上下文中直接连接实体,这对于管理实体数据模型以及仅用于基本的关注点分离都有好处。

    【讨论】:

    • 感谢您的精彩解释!
    猜你喜欢
    • 1970-01-01
    • 2011-06-15
    • 2012-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多