UpdateFunction (EntityTypeMapping)

作为实体数据模型 (EDM) 中 EntityTypeMapping 元素的子元素,ModificationFunctionMapping 中的 UpdateFunction 元素标识更新或修改现有实体的存储过程。

为了更新实体,UpdateFunction 元素会将存储架构中实体的属性映射到数据库中存储过程的参数。该存储过程修改存储中数据类型的实例。

示例

在下面的示例中,UpdateFunction 元素映射一个修改 Adventureworks 销售模型中 SalesOrderDetail 实体实例的存储过程。UpdateFunction 元素的每个 ScalarProperty 子元素将存储模型中 SalesOrderDetail 实体的属性映射到该存储过程中的参数。为了映射这些实体,ScalarProperty 子元素使用了以下属性:

  • Name 属性 (Attribute) 标识要映射的 SalesOrderDetail 实体的属性 (Property)。

  • ParameterName 属性 (Attribute) 标识 SalesOrderDetail 实体的属性 (Property) 映射到的存储过程参数。

  • Version 属性将数据指定为从数据库读取的原始数据,或可能已由客户端代码更改的当前数据。

除了 ScalarProperty 子元素之外,UpdateFunction 元素还包含 AssociationEnd 元素,该元素用于映射被修改的实体可能引用的关联。有关更多信息,请参见 AssociationEnd (EntityTypeMapping)

  <UpdateFunction
     FunctionName="AdventureWorksModel.Store.UpdateSalesOrderDetail" >
        <ScalarProperty Name="OrderQty" ParameterName="OrderQty"  Version="Current"/>
        <ScalarProperty Name="SalesOrderDetailID"
           ParameterName="SalesOrderDetailID" Version="Current"/>
      <AssociationEnd
         AssociationSet="FK_SalesOrderDetail_SalesOrderHeader_SalesOrderID"
    From="SalesOrderDetail" To="SalesOrderHeader">
        <ScalarProperty Name="SalesOrderID"
          ParameterName="SalesOrderID" Version="Current" />
       </AssociationEnd>
  </UpdateFunction>

另请参见

任务

如何:使用存储过程定义模型(实体框架)

概念

存储过程支持(实体框架)
ModificationFunctionMapping (AssociationSetMapping)
DeleteFunction (EntityTypeMapping)
InsertFunction (EntityTypeMapping)