엔터티 컨테이너(엔터티 데이터 모델)
엔터티 컨테이너는 엔터티 집합, 연결 집합 및 함수 가져오기의 논리적 그룹입니다.
개념적 모델에 정의된 엔터티 컨테이너에 대해 다음 조건이 충족되어야 합니다.
각 개념적 모델에 엔터티 컨테이너가 하나 이상 정의되어 있어야 합니다.
각 개념적 모델 내에서 엔터티 컨테이너의 이름이 고유해야 합니다.
엔터티 컨테이너는 하나 이상의 네임스페이스에 정의된 엔터티 형식이나 연결을 사용하는 엔터티 집합 또는 연결 집합을 정의할 수 있습니다. 자세한 내용은 엔터티 데이터 모델: 네임스페이스를 참조하십시오.
예제
다음 다이어그램에서는 세 가지 엔터티 형식 Book, Publisher 및 Author가 포함된 개념적 모델을 보여 줍니다. 자세한 내용은 다음 예제를 참조하십시오.
다이어그램에는 엔터티 컨테이너 정보가 표시되지 않지만 개념적 모델에서 엔터티 컨테이너를 정의해야 합니다. ADO.NET Entity Framework는 CSDL(개념 스키마 정의 언어)이라고 하는 DSL을 사용하여 개념적 모델을 정의합니다. 다음 CSDL에서는 위의 다이어그램에 표시된 개념적 모델의 엔터티 컨테이너를 정의합니다. 엔터티 컨테이너 이름은 XML 특성에 정의되어 있습니다.
<EntityContainer Name="BooksContainer" >
<EntitySet Name="Books" EntityType="BooksModel.Book" />
<EntitySet Name="Publishers" EntityType="BooksModel.Publisher" />
<EntitySet Name="Authors" EntityType="BooksModel.Author" />
<AssociationSet Name="PublishedBy" Association="BooksModel.PublishedBy">
<End Role="Book" EntitySet="Books" />
<End Role="Publisher" EntitySet="Publishers" />
</AssociationSet>
<AssociationSet Name="WrittenBy" Association="BooksModel.WrittenBy">
<End Role="Book" EntitySet="Books" />
<End Role="Author" EntitySet="Authors" />
</AssociationSet>
</EntityContainer>