Delen via


koppelingstype

Een koppelingstype (ook wel een koppeling genoemd) is de fundamentele bouwsteen voor het beschrijven van relaties in het Entity Data Model (EDM). In een conceptueel model vertegenwoordigt een koppeling een relatie tussen twee entiteitstypen (zoals Customer en Order). In een toepassing vertegenwoordigt een instantie van een koppeling een specifieke koppeling (zoals een koppeling tussen een exemplaar van Customer en een exemplaar van Order). Koppelingsexemplaren worden logisch gegroepeerd in een koppelingsset.

Een koppelingsdefinitie bevat de volgende informatie:

  • Een unieke naam. (Verplicht)

  • Twee koppeling eindigt, één voor elk entiteitstype in de relatie. (Verplicht)

    Notitie

    Een koppeling kan geen relatie tussen meer dan twee entiteitstypen vertegenwoordigen. Een koppeling kan echter een zelfrelatie definiëren door hetzelfde entiteitstype op te geven voor elk van de bijbehorende koppelingseinden.

  • Een beperking voor referentiële integriteit. (Optioneel)

Elk koppelingseindeinde moet een multipliciteit opgeven die het aantal exemplaren van het entiteitstype aangeeft dat zich aan één uiteinde van de koppeling kan bevinden. Een koppelingseinde multipliciteit kan een waarde hebben van één (1), nul of één (0,.1) of veel (*). Exemplaren van entiteitstypen aan het ene uiteinde van een koppeling kunnen worden geopend via navigatie-eigenschappen of refererende sleutels als deze beschikbaar zijn op een entiteitstype. Zie Entiteitsgegevensmodel: Refererende sleutels voor meer informatie.

Opmerking

In het onderstaande diagram ziet u een conceptueel model met twee koppelingen: PublishedBy en WrittenBy. De koppeling eindigt voor de PublishedBy koppeling zijn de Book en Publisher entiteitstypen. De multipliciteit van het Publisher einde is één (1) en de multipliciteit van het Book einde is veel (*), wat aangeeft dat een uitgever veel boeken publiceert en een boek door één uitgever wordt gepubliceerd.

Example model with three entity types

De ADO.NET Entity Framework maakt gebruik van een domeinspecifieke taal (DSL) genaamd conceptuele schemadefinitietaal (CSDL) om conceptuele modellen te definiëren. De volgende CSDL definieert de PublishedBy koppeling die wordt weergegeven in het bovenstaande diagram:

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

Zie ook