EntityTypeMapping 元素 (EntitySetMapping)

在 实体数据模型 (EDM) 中,EntityTypeMapping 元素将使用概念性架构定义语言 (CSDL) 声明的实体类型及其每个属性连接到使用存储架构定义语言 (SSDL) 定义的元数据中的表和列。EntityTypeMapping 元素在 EntitySetMappingEntityContainer 元素内部使用。

下面的示例演示了隔离状态下的 EntityTypeMapping

      <EntityTypeMapping
               TypeName="AdventureWorksHRModel.Department">
        <MappingFragment TableName="Department">
          <ScalarProperty Name="DepartmentID"
                            ColumnName="DepartmentID" />
          <ScalarProperty Name="Name" ColumnName="Name" />
          <ScalarProperty Name="GroupName"
                                     ColumnName="GroupName" />
          <ScalarProperty Name="ModifiedDate"
                                  ColumnName="ModifiedDate" />
        </MappingFragment>
      </EntityTypeMapping>

此映射将 AdventureWorksHRModel 命名空间中的 Department 实体映射到 MappingFragment 元素内的 DepartmentTableName。概念性架构中的 EntityContainer 元素映射到存储元数据中的对应 EntityContainer 元素,但在映射文件中,EntityContainer 的完全限定名称不包括架构命名空间名称。在 XML 层次结构中,EntityContainer 独立于 Schema

Department 实体的每个属性连接到 ScalarProperty 元素内指定的 ColumnName 对象。

在完整上下文中,EntityTypeMapping 包含在 MappingEntityContainerMappingEntitySetMapping 元素中。

<Mapping>
  <EntityContainerMapping CdmEntityContainer="HumanResources"
StorageEntityContainer="HumanResources">
    <EntitySetMapping Name="Department">

      <EntityTypeMapping
                 TypeName="AdventureWorksHRModel.Department">
        <MappingFragment TableName="Department">
          <ScalarProperty Name="DepartmentID"
                             ColumnName="DepartmentID" />
          <ScalarProperty Name="Name" ColumnName="Name" />
          <ScalarProperty Name="GroupName"
                                     ColumnName="GroupName" />
          <ScalarProperty Name="ModifiedDate"
                                 ColumnName="ModifiedDate" />
        </MappingFragment>
      </EntityTypeMapping>

    </EntitySetMapping>

  </EntityContainerMapping>
</Mapping>

有关在其中声明 Department 实体的 CSDL 语法,请参见 EntityType 元素 (CSDL)。有关描述所映射的存储模型的 SSDL 语法,请参见 EntityType 元素 (SSDL)

另请参见

概念

Mapping 元素 (MSL)
EntityContainerMapping 元素 (MSL)
EntitySetMapping 元素 (MSL)
EntityType 元素 (CSDL)
EntityType 元素 (SSDL)
AdventureWorks 完整模型 (EDM)