EntitySetMapping 요소(MSL)
EDM(엔터티 데이터 모델)을 사용하는 개체 모델을 정의하려면 모델을 기반으로 하는 응용 프로그램에 대한 데이터가 프로그래밍 가능 클래스 및 저장소 구조 모두에 들어 있어야 합니다. MSL(매핑 사양 언어)의 EntitySetMapping 요소는 CSDL(개념 스키마 정의 언어)에 정의된 EntitySet을 SSDL(저장소 스키마 정의 언어)의 EntitySet에 연결합니다.
개념 스키마의 EntityContainer 요소는 저장소 메타데이터에 있는 해당 EntityContainer 요소에 매핑됩니다. 매핑 파일에서 EntityContainer의 정규화된 이름에는 스키마 네임스페이스 이름이 포함되지 않습니다. 스키마 네임스페이스 이름으로 정규화된 엔터티 컨테이너 이름을 사용하면 매핑 예외가 발생합니다.
EntitySetMapping 요소는 개념 스키마의 Department 엔터티를 저장소 메타데이터의 Department 테이블에 매핑합니다. EntitySet은 엔터티 형식의 인스턴스 집계이며, EntitySetMapping은 AdventureWorksHRModel의 형식 이름과 속성을 저장소 메타데이터의 테이블 이름과 열 이름에 연결하는 EntityType 매핑에 의해 정의됩니다. 이 구문에 대한 자세한 내용은 EntityTypeMapping 요소(EntitySetMapping)를 참조하십시오.
다음 예제에서는 Department 엔터티에 대한 EntitySet 매핑 사양을 보여 줍니다. 이 예제에서 EntitySetMapping 요소는 AdventureWorksHRModel 개념 스키마의 HumanResources 컨테이너와 AdventureWorksHRTarget 저장소 메타데이터의 HumanResources 컨테이너 사이에 매핑을 지정하는 EntityContainerMapping 요소 내부에서 사용됩니다.
<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)