EntitySetMapping 項目 (MSL)

使用 實體資料模型 (EDM) 定義物件模型同時需要可程式化類別和儲存結構,以容納模型上所建置之應用程式的資料。對應規格語言 (MSL) 中的 EntitySetMapping 項目會將概念結構定義語言 (CSDL) 中所定義的 EntitySet 連接到存放結構定義語言 (SSDL) 中的 EntitySet

概念結構描述中的 EntityContainer 項目會對應到儲存中繼資料內的對應 EntityContainer 項目。在對應檔中,EntityContainer 的完整類別名稱不包含結構描述命名空間名稱。使用結構描述命名空間名稱所限定的實體容器名稱會造成對應例外狀況。

EntitySetMapping 項目會將概念結構描述中的 Department 實體對應到儲存中繼資料內的 Department 資料表。EntitySet 是實體類型的執行個體彙總 (Aggregate),而 EntitySetMapping 則是由 EntityType 對應所定義,該對應會將 AdventureWorksHRModel 中的型別名稱和屬性連接到儲存中繼資料內的資料表名稱和資料行名稱。如需有關這個語法的詳細資訊,請參閱 EntityTypeMapping 項目 (EntitySetMapping)

下列範例會示範 Department 實體的 EntitySet 對應規格。在此範例中,EntitySetMapping 項目會在 EntityContainerMapping 項目內使用,後者會指定 AdventureWorksHRModel 概念結構描述中的 HumanResources 容器與 AdventureWorksHRTarget 儲存中繼資料內的 HumanResources 容器之間的對應。

<EntityContainerMapping CdmEntityContainer="HumanResources"
                      StorageEntityContainer="HumanResources">

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

  </EntityContainerMapping>

另請參閱

概念

EntityTypeMapping 項目 (EntitySetMapping)
EntityContainer 項目 (SSDL)
EntityContainer 項目 (CSDL)
AdventureWorks 完整模型 (EDM)