代码之家  ›  专栏  ›  技术社区  ›  Jacob Adams

实体框架将多个表映射到一个实体

  •  7
  • Jacob Adams  · 技术社区  · 15 年前

    我有一个数据库,其中有一个表用于当前订单和一个表用于非活动订单。我想在实体框架中将其建模为一个称为订单的实体。我还需要一种方法来确定此集合中的订单是否处于活动状态,最好是在根据其所在表设置的实体上具有status属性。是否仍要使用实体框架1执行此操作。在实体框架4中呢?

    5 回复  |  直到 12 年前
        1
  •  5
  •   Devart    15 年前

    查看每个具体类型继承的表。
    它被描述 here 在ADO.NET团队日志中。

        2
  •  6
  •   Matt Dotson    15 年前

    您可以在数据库中创建一个视图并从中生成实体。

        3
  •  1
  •   JKJKJK    15 年前

    我想这就是你要找的: How to: Define a Model with Multiple Entity Sets per Type (Entity Framework)

    “实体数据模型(EDM)允许单个实体容器中的多个实体集包含一个实体类型,或者允许多个实体容器中的实体集包含一个实体类型。定义每种类型的多个实体集(MEST)允许用户在数据库具有分区或多个表具有相同结构的其他类似情况下简化代码。”

        4
  •  0
  •   Anthony    15 年前

    如果我正确理解你,活跃和不活跃的订单将共享相同的属性(例如:两者都有一个十进制的“金额”属性),如果是这样,那么在EF1中,我很确定这是不可能的。我认为您必须退回到将实体映射到poco orders对象。

        5
  •  0
  •   Flea Chetan Bhalara    12 年前

    一个共享多个表的实体的好方法是使用 分割实体 . msdn有一个非常简单的教程,指导您完成非常简单的过程,但是,您可能需要重新调整数据模型: http://msdn.microsoft.com/en-us/data/jj715646.aspx