UpdateFunction-Element (MSL)
In MSL (Mapping Specification Language, MSL) ordnet dasUpdateFunction-Element die Einfüge-, Aktualisierungs- und Löschfunktionen eines Entitätstyps im konzeptionellen Modell gespeicherten Prozeduren in der zugrunde liegenden Datenbank zu. Gespeicherte Prozeduren, denen Änderungsfunktionen zugeordnet werden, müssen im Speichermodell deklariert werden. Weitere Informationen finden Sie unter Function-Element (SSDL).
Hinweis: |
---|
Wenn Sie nicht alle drei Einfüge-, Aktualisierungs- und Löschvorgänge eines Entitätstyps gespeicherten Prozeduren zuordnen, schlagen die nicht zugeordneten Vorgänge bei der Ausführung zur Laufzeit fehl, und es wird eine Ausnahme des Typs UpdateException ausgelöst. |
Das UpdateFunction-Element kann ein untergeordnetes Element des ModificationFunctionMapping-Elements sein und auf das EntityTypeMapping-Element angewendet werden.
Das UpdateFunction-Element kann die folgenden untergeordneten Elemente besitzen:
AssociationEnd (null (0) oder mehr)
ComplexProperty (0 (null) oder mehr)
ResultBinding (0 (null) oder einer)
ScalarProperty (null (0) oder mehr)
Anwendbare Attribute
In der folgenden Tabelle werden die Attribute beschrieben, die auf das UpdateFunction-Element angewendet werden können.
Attributname | Ist erforderlich | Wert |
---|---|---|
FunctionName |
Ja |
Der mit einem Namespace qualifizierte Name der gespeicherten Prozedur, der die Aktualisierungsfunktion zugeordnet wird. Die gespeicherte Prozedur muss im Speichermodell deklariert werden. |
RowsAffectedParameter |
Nein |
Der Name des Ausgabeparameters, der die Anzahl der betroffenen Zeilen zurückgibt. |
Beispiel
Das folgende Beispiel basiert auf dem Modell "School" und zeigt das UpdateFunction-Element, mit dem die Aktualisierungsfunktion des Person-Entitätstyps der gespeicherten Prozedur UpdatePerson zugeordnet wird. Die gespeicherte Prozedur UpdatePerson wird im Speichermodell deklariert.
<EntityTypeMapping TypeName="SchoolModel.Person">
<ModificationFunctionMapping>
<InsertFunction FunctionName="SchoolModel.Store.InsertPerson">
<ScalarProperty Name="EnrollmentDate"
ParameterName="EnrollmentDate" />
<ScalarProperty Name="HireDate" ParameterName="HireDate" />
<ScalarProperty Name="FirstName" ParameterName="FirstName" />
<ScalarProperty Name="LastName" ParameterName="LastName" />
<ResultBinding Name="PersonID" ColumnName="NewPersonID" />
</InsertFunction>
<UpdateFunction FunctionName="SchoolModel.Store.UpdatePerson">
<ScalarProperty Name="EnrollmentDate"
ParameterName="EnrollmentDate"
Version="Current" />
<ScalarProperty Name="HireDate" ParameterName="HireDate"
Version="Current" />
<ScalarProperty Name="FirstName" ParameterName="FirstName"
Version="Current" />
<ScalarProperty Name="LastName" ParameterName="LastName"
Version="Current" />
<ScalarProperty Name="PersonID" ParameterName="PersonID"
Version="Current" />
</UpdateFunction>
<DeleteFunction FunctionName="SchoolModel.Store.DeletePerson">
<ScalarProperty Name="PersonID" ParameterName="PersonID" />
</DeleteFunction>
</ModificationFunctionMapping>
</EntityTypeMapping>
Siehe auch
Weitere Ressourcen
CSDL-, SSDL- und MSL-Spezifikationen
Modellieren und Zuordnen (Entity Framework)