Prinzipalelement (CSDL)
Das Principal-Element in konzeptioneller Schemadefinitionssprache (CSDL) ist ein dem ReferentialConstraint-Element untergeordnetes Element, das das Prinzipalende einer referenziellen Einschränkung definiert. Ein ReferentialConstraint-Element definiert Funktionen, die einer Einschränkung der referenziellen Integrität in einer relationalen Datenbank ähnlich sind. So wie eine Spalte (oder Spalten) einer Datenbanktabelle auf den Primärschlüssel einer anderen Tabelle verweisen kann, kann eine Eigenschaft (oder Eigenschaften) eines Entitätstyps auf den Entitätsschlüssel eines anderen Entitätstyps verweisen. Der Entitätstyp, auf den verwiesen wird, wird als Prinzipalende der Einschränkung bezeichnet. Der Entitätstyp, der auf das Prinzipalende verweist, wird als abhängiges Ende der Einschränkung bezeichnet. PropertyRef-Elemente werden zur Angabe der Schlüssel verwendet, auf die vom abhängigen Ende verwiesen wird.
Das Principal-Element kann die folgenden untergeordneten Elemente aufweisen (der vorliegenden Reihenfolge entsprechend):
PropertyRef (mindestens ein Element)
Anmerkungselemente (kein Element (null) oder mehrere Elemente)
Anwendbare Attribute
In der folgenden Tabelle werden die Attribute beschrieben, die für das Principal-Element übernommen werden können.
Attributname | Ist erforderlich | Wert |
---|---|---|
Role |
Ja |
Der Name des Entitätstyps am Prinzipalende der Zuordnung. |
Hinweis: |
---|
Eine beliebige Anzahl von Anmerkungsattributen (benutzerdefinierte XML-Attribute) kann für das Principal-Element übernommen werden.Benutzerdefinierte Attribute dürfen jedoch zu keinem XML-Namespace gehören, der für CSDL reserviert ist.Die vollqualifizierten Namen für zwei benutzerdefinierte Attribute dürfen nicht übereinstimmen. |
Beispiel
Das folgende Beispiel zeigt ein ReferentialConstraint-Element, das Teil der Definition der PublishedBy-Zuordnung ist. Die Id-Eigenschaft des Publisher-Entitätstyps bildet das Prinzipalende der referenziellen Einschränkung.
<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>
Siehe auch
Konzepte
Übersicht über das Entity Framework
CSDL-Spezifikation
Schema-Element (CSDL)
Association-Element (CSDL)
Abhängiges Element (CSDL)
Weitere Ressourcen
CSDL-, SSDL- und MSL-Spezifikationen
ADO.NET Entity Data Model Tools