Function-Element (SSDL)
Das Function-Element der Datenspeicherschema-Definitionssprache (Store Schema Definition Language, SSDL) gibt eine in der zugrunde liegenden Datenbank vorhandene gespeicherte Prozedur an.
Das Function-Element kann die folgenden untergeordneten Elemente aufweisen (der vorliegenden Reihenfolge entsprechend):
Dokumentation (kein (null) oder ein Element)
CommandText (kein (null) oder ein Element)
Parameter (kein (null) oder mehrere Elemente)
Anmerkungselemente (kein (null) oder mehrere Elemente)
Gespeicherte Prozeduren, die im Speichermodell angegeben sind, können in das konzeptionelle Modell einer Anwendung importiert werden. Weitere Informationen finden Sie unter How to: Import a Stored Procedure. Das Function-Element kann auch dazu verwendet werden, benutzerdefinierte Funktionen im Speichermodell zu definieren. Weitere Informationen finden Sie unter How to: Define Custom Functions in the Storage Model.
Anwendbare Attribute
In der folgenden Tabelle werden die Attribute beschrieben, die für das Function-Element übernommen werden können.
Hinweis: |
---|
Einige, hier nicht aufgeführte Attribute werden möglicherweise mit dem store-Alias qualifiziert. Dies ist der Alias für den Namespace https://schemas.microsoft.com/ado/2007/12/edm/EntityStoreSchemaGenerator.Diese Attribute werden vom Modellaktualisierungs-Assistenten beim Aktualisieren eines Modells verwendet. |
Attributname | Ist erforderlich | Wert |
---|---|---|
Name |
Ja |
Name der gespeicherten Prozedur: |
ReturnType |
Nein |
Der Rückgabetyp der gespeicherten Prozedur. |
Aggregate |
Nein |
True, wenn die gespeicherte Prozedur einen Aggregatwert zurückgibt, andernfalls False. |
BuiltIn |
Nein |
True, wenn die Funktion eine integrierte1 Funktion ist, andernfalls False. |
StoreFunctionName |
Nein |
Name der gespeicherten Prozedur: |
NiladicFunction |
Nein |
True, wenn die Funktion eine NILADIC2-Funktion ist, andernfalls False. |
IsComposable |
Nein |
True, wenn die Funktion eine zusammensetzbare3 Funktion ist, andernfalls False. |
ParameterTypeSemantics |
Nein |
Die Enumeration, die die Typsemantik definiert, die zum Auflösen von Funktionsüberladungen verwendet wird. Die Enumeration ist im Anbietermanifest für jede Funktionsdefinition definiert. Der Standardwert ist AllowImplicitConversion. |
Schema |
Nein |
Der Name des Schemas, in dem die gespeicherte Prozedur definiert ist. |
1 Eine integrierte Funktion ist eine Funktion, die in der Datenbank definiert ist. Informationen zu Funktionen, die im Speichermodell definiert sind, finden Sie unter CommandText-Element (SSDL).
2 Eine NILADIC-Funktion ist eine Funktion, die keine Parameter akzeptiert und ohne Klammern aufgerufen werden kann.
3 zwei Funktionen sind zusammensetzbar, wenn der Rückgabewert einer Funktion als Eingabewert der anderen Funktion verwendet werden kann.
Hinweis: |
---|
Eine beliebige Anzahl von Anmerkungsattributen (benutzerdefinierte XML-Attribute) kann für das Function-Element übernommen 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 Function-Element gezeigt, das der gespeicherten Prozedur UpdateOrderQuantity entspricht. Die gespeicherte Prozedur akzeptiert zwei Parameter und gibt keinen Wert zurück.
<Function Name="UpdateOrderQuantity"
Aggregate="false"
BuiltIn="false"
NiladicFunction="false"
IsComposable="false"
ParameterTypeSemantics="AllowImplicitConversion"
Schema="dbo">
<Parameter Name="orderId" Type="int" Mode="In" />
<Parameter Name="newQuantity" Type="int" Mode="In" />
</Function>
Siehe auch
Konzepte
Übersicht über das Entity Framework
SSDL-Spezifikation
CommandText-Element (SSDL)
Weitere Ressourcen
CSDL-, SSDL- und MSL-Spezifikationen
ADO.NET Entity Data Model Tools