实体容器

实体容器实体集关联集函数导入的逻辑分组。

以下条件必须在概念模型中定义的实体容器中为真:

  • 必须在每个概念模型中定义至少一个实体容器。

  • 实体容器在每个概念模型中必须具有唯一的名称。

实体容器可以定义使用在一个或多个命名空间中定义的实体类型或关联的实体集或关联集。 有关详细信息,请参阅 实体数据模型:命名空间

示例:

下图显示了一个概念模型,其中包含三种实体类型:BookPublisherAuthor。 有关详细信息,请参阅下一个示例。

具有三种实体类型的示例模型

虽然关系图不传达实体容器信息,但概念模型必须定义实体容器。 ADO.NET 实体框架使用称为概念架构定义语言 (CSDL) 的 DSL 来定义概念模型。 以下 CSDL 为上图中显示的概念模型定义实体容器。 请注意,实体容器名称是在 XML 属性中定义的。

<EntityContainer Name="BooksContainer" >
  <EntitySet Name="Books" EntityType="BooksModel.Book" />
  <EntitySet Name="Publishers" EntityType="BooksModel.Publisher" />
  <EntitySet Name="Authors" EntityType="BooksModel.Author" />
  <AssociationSet Name="PublishedBy" Association="BooksModel.PublishedBy">
    <End Role="Book" EntitySet="Books" />
    <End Role="Publisher" EntitySet="Publishers" />
  </AssociationSet>
  <AssociationSet Name="WrittenBy" Association="BooksModel.WrittenBy">
    <End Role="Book" EntitySet="Books" />
    <End Role="Author" EntitySet="Authors" />
  </AssociationSet>
</EntityContainer>

另请参阅