Partager via


InsertFunction (EntityTypeMapping)

En tant qu'élément enfant d'un élément EntityTypeMapping du modèle EDM (Entity Data Model), l'élément InsertFunction d'un élément ModificationFunctionMapping identifie la procédure stockée qui crée une entité.

Pour créer cette entité, l'élément InsertFunction mappe les propriétés d'une entité du schéma de stockage aux paramètres d'une procédure stockée de la base de données. La procédure stockée crée la nouvelle instance de l'entité dans le stockage.

Exemple

Dans l'exemple suivant, l'élément InsertFunction mappe une procédure stockée qui crée des instances de l'entité SalesOrderDetail du modèle de vente Adventureworks Sales Model. Chaque élément enfant ScalarProperty de l'élément InsertFunction mappe une propriété de l'entité SalesOrderDetail à un paramètre de la procédure stockée. Pour mapper ces entités, l'élément enfant ScalarProperty utilise ces attributs :

  • L'attribut Name identifie la propriété de l'entité SalesOrderDetail à mapper.

  • L'attribut ParameterName identifie le paramètre de la procédure stockée auquel la propriété d'une entité SalesOrderDetail est mappée.

  • L'attribut Version spécifie les données comme étant les données d'origine lues de la base de données ou comme étant les données actuelles éventuellement modifiées par le code client.

Outre l'élément enfant ScalarProperty, l'élément InsertFunction inclut un élément AssociationEnd qui mappe les associations que l'entité en cours de création peut instancier. Pour plus d'informations, voir AssociationEnd (EntityTypeMapping).

  <InsertFunction
       FunctionName="AdventureWorksModel.Store.CreateSalesOrderDetail">
        <ScalarProperty Name="CarrierTrackingNumber"
              ParameterName="CarrierTrackingNumber" Version="Current"/>
        <ScalarProperty Name="OrderQty" ParameterName="OrderQty"
              Version="Current"/>
        <ScalarProperty Name="ProductID" ParameterName="ProductID"
              Version="Current"/>
        <ScalarProperty Name="SpecialOfferID"
              ParameterName="SpecialOfferID" Version="Current"/>
        <ScalarProperty Name="UnitPrice" ParameterName="UnitPrice"
              Version="Current"/>
        <ScalarProperty Name="UnitPriceDiscount"
              ParameterName="UnitPriceDiscount" Version="Current"/>
        <ScalarProperty Name="rowguid" ParameterName="rowguid" Version="Current"/>
        <ScalarProperty Name="ModifiedDate"
              ParameterName="ModifiedDate" Version="Current"/>
    <AssociationEnd
      AssociationSet="FK_SalesOrderDetail_SalesOrderHeader_SalesOrderID"
     From="SalesOrderDetail" To="SalesOrderHeader">
        <ScalarProperty Name="SalesOrderID"
           ParameterName="SalesOrderID" />
    </AssociationEnd>
    <ResultBinding ColumnName="SalesOrderDetailID"
       Name="SalesOrderDetailID" />
    <ResultBinding ColumnName="LineTotal" Name="LineTotal" />
  </InsertFunction>

Voir aussi

Tâches

Procédure : définir un modèle avec une procédure stockée (Entity Framework)

Concepts

Prise en charge des procédures stockées (Entity Framework)
ModificationFunctionMapping (AssociationSetMapping)
DeleteFunction (EntityTypeMapping)
UpdateFunction (EntityTypeMapping)