ReferentialConstraint-Element (SSDL)
In SSDL (Store Schema Definition Language) stellt das ReferentialConstraint-Element eine Fremdschlüsseleinschränkung (auch Einschränkung der referenziellen Integrität genannt) in der zugrunde liegenden Datenbank dar. Das Prinzipalende und das abhängige Ende der Einschränkung werden durch das Principal-Element bzw. das Dependent-Element angegeben. Auf Spalten, die am Prinzipalende und am abhängigen Enden beteiligt sind, wird mit PropertyRef-Elementen verwiesen.
Das ReferentialConstraint-Element ist ein optionales untergeordnetes Element des Association-Elements. Wenn kein ReferentialConstraint-Element verwendet wird, um die Fremdschlüsseleinschränkung zuzuordnen, die im Association-Element angegeben wird, muss ein AssociationSetMapping-Element verwendet werden, um dies zu tun.
Das ReferentialConstraint-Element kann die folgenden untergeordneten Elemente besitzen:
Dokumentation (0 (null) oder ein Element)
Principal (genau ein Element)
Dependent (genau ein Element)
Anmerkungselemente (kein (null) oder mehrere Elemente)
Anwendbare Attribute
Eine beliebige Anzahl von Anmerkungsattributen (benutzerdefinierte XML-Attribute) kann auf das ReferentialConstraint-Element angewendet werden. Benutzerdefinierte Attribute dürfen jedoch zu keinem XML-Namespace gehören, der für SSDL reserviert ist. Die vollqualifizierten Namen für zwei benutzerdefinierte Attribute dürfen nicht übereinstimmen.
Beispiel
Im folgenden Beispiel wird ein Association-Element gezeigt, das ein ReferentialConstraint-Element verwendet, um die Spalten anzugeben, die an der FK_CustomerOrders-Fremdschlüsseleinschränkung teilnehmen:
<Association Name="FK_CustomerOrders">
<End Role="Customers"
Type="ExampleModel.Store.Customers" Multiplicity="1">
<OnDelete Action="Cascade" />
</End>
<End Role="Orders"
Type="ExampleModel.Store.Orders" Multiplicity="*" />
<ReferentialConstraint>
<Principal Role="Customers">
<PropertyRef Name="CustomerId" />
</Principal>
<Dependent Role="Orders">
<PropertyRef Name="CustomerId" />
</Dependent>
</ReferentialConstraint>
</Association>
Siehe auch
Konzepte
Übersicht über das Entity Framework
SSDL-Spezifikation
AssociationSet-Element (SSDL)
Weitere Ressourcen
CSDL-, SSDL- und MSL-Spezifikationen
ADO.NET Entity Data Model Tools