TypeRef-Element (CSDL)
Das TypeRef-Element in konzeptioneller Schemadefinitionssprache (CSDL) stellt einen Verweis auf einen vorhandenen benannten Typ bereit.Das TypeRef-Element kann ein untergeordnetes Element des CollectionType-Elements sein, mit dem angegeben wird, dass eine Funktion über eine Auflistung als Parameter oder Rückgabetyp verfügt.Weitere Informationen finden Sie unter Function-Element (CSDL).
Ein TypeRef-Element kann die folgenden untergeordneten Elemente aufweisen (der vorliegenden Reihenfolge entsprechend):
Dokumentation (kein (null) oder ein Element)
Anmerkungselemente (kein Element (null) oder mehrere Elemente)
Anwendbare Attribute
In der folgenden Tabelle werden die Attribute beschrieben, die für das TypeRef-Element übernommen werden können.Die DefaultValue-, MaxLength-, FixedLength-, Precision-, Scale-, Unicode- und Collation-Attribute sind nur für EDMSimpleTypes zulässig.Weitere Informationen finden Sie unter Facets (CSDL) und Konzeptionelle Modelltypen (CSDL).
Attributname |
Ist erforderlich |
Value |
---|---|---|
Type |
Nein |
Der Name der Typbibliothek, auf die verwiesen wird. |
Nullable |
Nein |
True (Standardwert) oder False, je nach dem, ob die Eigenschaft den Wert NULL haben kann. ![]()
In der Version von CSDL, die im https://schemas.microsoft.com/ado/2006/04/edm-Namespace angegeben wird, muss eine komplexe Typeigenschaft Nullable="False" aufweisen.
|
DefaultValue |
Nein |
Der Standardwert der Eigenschaft. |
MaxLength |
Nein |
Die maximale Länge des Eigenschaftswerts. |
FixedLength |
Nein |
True oder False, abhängig davon, ob der Eigenschaftswert als Zeichenfolge mit fester Länge gespeichert wird. |
Precision |
Nein |
Die Genauigkeit des Eigenschaftswerts. |
Scale |
Nein |
Die Skalierung des Eigenschaftswerts. |
Unicode |
Nein |
True oder False, abhängig davon, ob der Eigenschaftswert als Unicode-Zeichenfolge gespeichert wird. |
Collation |
Nein |
Eine Zeichenfolge, die die Sortierreihenfolge angibt, die in der Datenquelle verwendet werden soll. |
Hinweis
Eine beliebige Anzahl von Anmerkungsattributen (benutzerdefinierte XML-Attribute) kann für das CollectionType-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 eine modelldefinierte Funktion, die das TypeRef-Element (als untergeordnetes Element eines CollectionType-Elements) verwendet, um anzugeben, dass die Funktion eine Auflistung von Department-Entitätstypen akzeptiert.
<Function Name="GetAvgBudget">
<Parameter Name="Departments">
<CollectionType>
<TypeRef Type="SchoolModel.Department"/>
</CollectionType>
</Parameter>
<ReturnType Type="Collection(Edm.Decimal)"/>
<DefiningExpression>
SELECT VALUE AVG(d.Budget) FROM Departments AS d
</DefiningExpression>
</Function>
Siehe auch
Konzepte
Übersicht über das Entity Framework