refererende sleuteleigenschap
Een refererende-sleuteleigenschap in het Entity Data Model (EDM) is een primitieve typeeigenschap (of een set primitieve typeeigenschappen) op een entiteitstype dat de entiteitssleutel van een ander entiteitstype bevat.
Een refererende-sleuteleigenschap is vergelijkbaar met een kolom met refererende sleutels in een relationele database. Op dezelfde manier dat refererende-sleutelkolommen worden gebruikt in een relationele database om relaties tussen rijen in tabellen te maken, worden refererende-sleuteleigenschappen in een conceptueel model gebruikt om koppelingen tussen entiteitstypen tot stand te brengen. Een referentiële integriteitsbeperking wordt gebruikt om een koppeling tussen twee entiteitstypen te definiëren wanneer een van de typen een refererende-sleuteleigenschap heeft.
Opmerking
In het onderstaande diagram ziet u een conceptueel model met drie entiteitstypen: Book
, Publisher
en Author
. Het Book
entiteitstype heeft een eigenschap, PublisherId
die verwijst naar de entiteitssleutel van het Publisher
entiteitstype wanneer u een beperking voor referentiële integriteit definieert voor de PublishedBy
koppeling.
De ADO.NET Entity Framework maakt gebruik van een domeinspecifieke taal (DSL) genaamd conceptuele schemadefinitietaal (CSDL) om conceptuele modellen te definiëren. In de volgende CSDL wordt de eigenschap PublisherId
referentiële sleutel gebruikt om een referentiële integriteitsbeperking te definiëren voor de PublishedBy
koppeling die wordt weergegeven in het conceptuele model dat hierboven wordt weergegeven.
<Association Name="PublishedBy">
<End Type="BooksModel.Book" Role="Book" Multiplicity="*" >
</End>
<End Type="BooksModel.Publisher" Role="Publisher" Multiplicity="1" />
<ReferentialConstraint>
<Principal Role="Publisher">
<PropertyRef Name="Id" />
</Principal>
<Dependent Role="Book">
<PropertyRef Name="PublisherId" />
</Dependent>
</ReferentialConstraint>
</Association>