實體容器 (實體資料模型)
「實體容器」(entity container) 是實體集、關聯集 與 函式匯入的邏輯群組。
在概念模型中定義的實體容器,下列必須為 true:
每個概念模型中至少必須定義一個實體容器。
每個概念模型中的實體容器必須要有一個唯一的名稱。
實體容器可以定義使用一或多個命名空間中定義之實體類型或關聯的實體集或關聯集。 如需詳細資訊,請參閱實體資料模型:命名空間。
範例
下圖顯示包含三種實體類型 (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>