Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Un vincolo di integrità referenziale in Entity Data Model (EDM) è simile a un vincolo di integrità referenziale in un database relazionale. Allo stesso modo in cui una colonna (o colonne) di una tabella di database può fare riferimento alla chiave primaria di un'altra tabella, una proprietà (o proprietà) di un tipo di entità può fare riferimento alla chiave di entità di un altro tipo di entità. Il tipo di entità a cui viene fatto riferimento è denominato fine principale del vincolo. Il tipo di entità che fa riferimento all'entità finale è denominato fine dipendente del vincolo.
Un vincolo di integrità referenziale viene definito come parte di un'associazione tra due tipi di entità. La definizione di un vincolo di integrità referenziale specifica le informazioni seguenti:
Fine principale del vincolo. Tipo di entità la cui chiave di entità è referenziata dall'estremità dipendente.
Chiave di entità dell'entità finale.
Termine dipendente del vincolo. Un tipo di entità con proprietà o proprietà che fanno riferimento alla chiave di entità dell'entità finale.
Proprietà o proprietà di riferimento della fine dipendente.
Lo scopo dei vincoli di integrità referenziale nell'EDM è garantire che le associazioni valide esistano sempre. Per altre informazioni, vedere proprietà di chiave esterna.
Esempio
Il diagramma seguente illustra un modello concettuale con due associazioni: WrittenBy
e PublishedBy
. Il Book
tipo di entità ha una proprietà , PublisherId
, che fa riferimento alla chiave di entità del Publisher
tipo di entità quando si definisce un vincolo di integrità referenziale sull'associazione PublishedBy
.
Il ADO.NET Entity Framework usa un linguaggio specifico del dominio (DSL) denominato linguaggio CSDL (Conceptual Schema Definition Language) per definire modelli concettuali. Il file CSDL seguente definisce un vincolo di integrità referenziale sull'associazione PublishedBy
illustrata nel modello concettuale precedente.
<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>
Vedere anche
- Concetti chiave del modello di dati di entità
- Modello di Dati dell'Entità