EntityType 項目 (CSDL)
EntityType 項目代表概念模型中最上層概念的結構,例如客戶或訂單。實體類型是應用程式中實體類型之執行個體的範本。每個範本包含下列資訊:
唯一名稱。(必要。)
實體索引鍵是由一個或多個屬性定義。(必要。)
包含資料的屬性。(選擇性。)
導覽屬性允許從關聯的一端巡覽至另一端。(選擇性。)
在應用程式中,實體類型的執行個體代表特定的物件 (例如特定的客戶或訂單)。實體類型的每一個執行個體都必須在實體集中有唯一的實體索引鍵。
如果兩個實體類型執行個體屬於相同類型,而且索引鍵的值也相同,則會將這兩個執行個體視為相等。
EntityType 項目可以擁有下列子項目 (依列出的順序):
Documentation (零或一個項目)
Key (零或一個項目)
Property (零或多個項目)
NavigationProperty (零或多個項目)
Annotation 項目 (零或多個項目)
適用屬性
下表描述可套用至 EntityType 項目的屬性。
屬性名稱 |
必要 |
值 |
---|---|---|
Name |
有 |
實體類型的名稱。 |
BaseType |
否 |
其他實體類型的名稱是即將定義之實體類型的基底類型。 |
Abstract |
否 |
True 或 False 是根據實體類型是否為抽象類型而定。 |
OpenType |
否 |
True 或 False 是根據實體類型是否為開放實體類型而定。
附註
OpenType 屬性只適用於概念模型中定義的實體類型,該概念模型會與 WCF Data Services 搭配使用。
|
注意
任何數量的附註屬性 (自訂 XML 屬性) 都可以套用至 EntityType 項目。不過,自訂屬性不可屬於任何 XML 命名空間,這是保留供 CSDL 使用。任兩個自訂屬性的完整名稱不能相同。
範例
下列範例顯示一個 EntityType 項目,其中包含三個 Property 項目和兩個 NavigationProperty 項目:
<EntityType Name="Book">
<Key>
<PropertyRef Name="ISBN" />
</Key>
<Property Type="String" Name="ISBN" Nullable="false" />
<Property Type="String" Name="Title" Nullable="false" />
<Property Type="Decimal" Name="Revision" Nullable="false" Precision="29" Scale="29" />
<NavigationProperty Name="Publisher" Relationship="BooksModel.PublishedBy"
FromRole="Book" ToRole="Publisher" />
<NavigationProperty Name="Authors" Relationship="BooksModel.WrittenBy"
FromRole="Book" ToRole="Author" />
</EntityType>