kontener jednostek
Kontener jednostki to logiczne grupowanie zestawów jednostek, zestawów skojarzeń i importów funkcji.
Następujące elementy muszą mieć wartość true dla kontenera jednostki zdefiniowanego w modelu koncepcyjnym:
Co najmniej jeden kontener jednostek musi być zdefiniowany w każdym modelu koncepcyjnym.
Kontener jednostki musi mieć unikatową nazwę w każdym modelu koncepcyjnym.
Kontener jednostki może definiować zestawy jednostek lub zestawy skojarzeń, które używają typów jednostek lub skojarzeń zdefiniowanych w co najmniej jednej przestrzeni nazw. Aby uzyskać więcej informacji, zobacz Entity Data Model: Namespaces (Model danych jednostki: przestrzenie nazw).
Przykład
Na poniższym diagramie przedstawiono model koncepcyjny z trzema typami jednostek: Book
, Publisher
i Author
. Aby uzyskać więcej informacji, zobacz następny przykład.
Chociaż diagram nie przekazuje informacji o kontenerze jednostek, model koncepcyjny musi zdefiniować kontener jednostki. ADO.NET Entity Framework używa języka DSL nazywanego koncepcyjnym językiem definicji schematu (CSDL) do definiowania modeli koncepcyjnych. Poniższy plik CSDL definiuje kontener jednostek dla modelu koncepcyjnego pokazanego na powyższym diagramie. Należy pamiętać, że nazwa kontenera jednostki jest zdefiniowana w atrybucie 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>