Principal 項目 (CSDL)
概念結構定義語言 (CSDL) 中的 Principal 項目是 ReferentialConstraint 項目的子項目,可定義參考條件約束的主要端點。ReferentialConstraint 項目可定義的功能,與關聯式資料庫中的參考完整性條件約束相似。同樣地,資料庫資料表的資料行 (或多個資料行) 可以參考其他資料表的主索引鍵,實體類型的屬性 (或多個屬性) 可以參考其他實體類型的實體索引鍵。參考的實體類型稱為條件約束的「主要端點」(Principal End)。參考主要端點的實體類型稱為條件約束的「相依端點」(Dependent End)。PropertyRef 項目是用來指定相依端點參考的索引鍵。
Principal 項目可以擁有下列子項目 (依列出的順序):
PropertyRef (一或多個項目)
Annotation 項目 (零或多個項目)
適用屬性
下表描述可套用至 Principal 項目的屬性。
屬性名稱 |
必要 |
值 |
---|---|---|
Role |
是 |
位於關聯之主要端點的實體類型名稱。 |
注意
任何數量的附註屬性 (自訂 XML 屬性) 都可以套用至 Principal 項目。不過,自訂屬性不可屬於任何 XML 命名空間,這是保留供 CSDL 使用。任兩個自訂屬性的完整名稱不能相同。
範例
下列範例顯示的 ReferentialConstraint 項目是 PublishedBy 關聯之定義的一部份。Publisher 實體類型的 Id 屬性構成參考條件約束的主要端點。
<Association Name="PublishedBy">
<End Type="BooksModel.Book" Role="Book" Multiplicity="*" >
</End>
<End Type="BooksModel.Publisher" Role="Publisher" Multiplicity="1" />
<ReferentialConstraint>
<Principal Role="Publisher">
<PropertyRef Name="Id" />
</Principal>
<Dependent Role="Book">
<PropertyRef Name="PublisherId" />
</Dependent>
</ReferentialConstraint>
</Association>