Dela via


föreningsände

En associationsslut identifierar entitetstypen i ena änden av en association och antalet instanser av entitetstyp som kan finnas i den änden av en association. Relationsändar definieras som en del av en relation; en relation måste ha exakt två relationsändar. Navigeringsegenskaper tillåter navigering från ena änden av en association till den andra.

En associationsslutdefinition innehåller följande information:

  • En av de entitetstyper som ingår i associationen. (Obligatoriskt)

    Anmärkning

    För en viss association kan den entitetstyp som anges för varje associationsslut vara densamma. Detta skapar en självassociation.

  • En association end multiplicity som anger antalet instanser av entitetstyp som kan finnas i ena änden av associationen. En associationslut multiplicitet kan ha ett värde på en (1), noll eller en (0..1), eller många (*).

  • Ett namn för associationens slut. (Valfritt)

  • Information om åtgärder som utförs vid associationens ändpunkt, såsom kaskad vid radering. (Valfritt)

Exempel

Diagrammet nedan visar en konceptmodell med två associationer: PublishedBy och WrittenBy. Associationens slut för associationen PublishedBy är entitetstyperna Book och Publisher . Multipliciteten av Publisher-änden är en (1) och multipliciteten av Book-änden är många (*), vilket indikerar att en utgivare publicerar många böcker och att en bok publiceras av en utgivare.

Exempelmodell med tre entitetstyper

ADO.NET Entity Framework använder ett domänspecifikt språk (DSL) som kallas CSDL (Conceptual Schema Definition Language) för att definiera konceptuella modeller. CSDL nedan definierar associationen PublishedBy som visas i diagrammet ovan. Observera att typen, namnet och multipliciteten för varje associationsslut anges av XML-attribut (attributen Type, Rolerespektive Multiplicity ). Valfri information om åtgärder som utförs på en slutpunkt anges i ett XML-element (elementet OnDelete). I det här fallet, om en utgivare tas bort, så tas alla associerade böcker bort.

  <Association Name="PublishedBy">
    <End Type="BooksModel.Book" Role="Book" Multiplicity="*" />
    <End Type="BooksModel.Publisher" Role="Publisher" Multiplicity="1" >
  <OnDelete Action="Cascade" />
</End>
  </Association>

Se även