Dela via


entitetscontainer

En entitetscontainer är en logisk gruppering av entitetsuppsättningar, associationsuppsättningar och funktionsimporter.

Följande måste gälla för en entitetscontainer som definierats i en konceptuell modell:

  • Minst en entitetscontainer måste definieras i varje konceptmodell.

  • Entitetscontainern måste ha ett unikt namn i varje konceptmodell.

En entitetscontainer kan definiera entitetsuppsättningar eller associationsuppsättningar som använder entitetstyper eller associationer som definierats i ett eller flera namnområden. Mer information finns i Entitetsdatamodell: Namnområden.

Exempel

Diagrammet nedan visar en konceptmodell med tre entitetstyper: Book, Publisheroch Author. Mer information finns i nästa exempel.

Example model with three entity types

Även om diagrammet inte förmedlar information om entitetscontainer måste den konceptuella modellen definiera en entitetscontainer. ADO.NET Entity Framework använder en DSL med namnet CSDL (Conceptual Schema Definition Language) för att definiera konceptuella modeller. Följande CSDL definierar en entitetscontainer för den konceptuella modell som visas i diagrammet ovan. Observera att entitetscontainerns namn definieras i ett XML-attribut.

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

Se även