Freigeben über


Entitätscontainer

Ein Entitätscontainer ist eine logische Gruppierung von Entitätssätzen, Zuordnungssätzen und Funktionsimporten.

Folgendes muss für einen Entitätscontainer gelten, der in einem konzeptionellen Modell definiert ist:

  • Mindestens ein Entitätscontainer muss in jedem konzeptionellen Modell definiert werden.

  • Der Entitätscontainer muss innerhalb jedes konzeptionellen Modells einen eindeutigen Namen haben.

Ein Entitätscontainer kann Entitätssätze oder Zuordnungssätze definieren, die Entitätstypen oder Zuordnungen verwenden, die in einem oder mehreren Namespaces definiert sind. Weitere Informationen finden Sie unter Entity Data Model: Namespaces.

Beispiel

Das folgende Diagramm zeigt ein konzeptionelles Modell mit drei Entitätstypen: Book, , Publisherund Author. Weitere Informationen finden Sie im nächsten Beispiel.

Beispielmodell mit drei Entitätstypen

Obwohl das Diagramm keine Entitätscontainerinformationen vermittelt, muss das konzeptionelle Modell einen Entitätscontainer definieren. Das ADO.NET Entity Framework verwendet eine DSL mit dem Namen konzeptionelle Schemadefinitionssprache (CSDL), um konzeptionelle Modelle zu definieren. Die folgende CSDL definiert einen Entitätscontainer für das konzeptionelle Modell, das im obigen Diagramm gezeigt wird. Beachten Sie, dass der Entitätscontainername in einem XML-Attribut definiert ist.

<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>

Siehe auch