An association set end identifies the entity type and the entity set at the end of an association set. Association set ends are defined as part of an association set; an association set must have exactly two association set ends.
An association set end definition contains the following information:
One of the entity types involved in the association set. (Required)
The entity set for the entity type involved in the association set. (Required)
The diagram below shows a conceptual model with two associations:
The following diagram shows an association set (
PublishedBy) and two entity sets (
Publishers) based on the conceptual model shown above. The association set ends are the
Publishers entity sets. Bi in the
Books entity set represents an instance of the
Book entity type at run time. Similarly, Pj represents a
Publisher instance in the
Publishers entity set. BiPj represents an instance of the
PublishedBy association in the
PublishedBy association set.
The ADO.NET Entity Framework uses a DSL called conceptual schema definition language (CSDL) to define conceptual models. The following CSDL defines an entity container with one association set for each association in the diagram above. Note that association set ends are defined as part of each association set definition.
<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>