Principal 元素 (CSDL)

以概念架构定义语言 (CSDL) 表示的 Principal 元素是 ReferentialConstraint 元素的子元素,用于定义引用约束的主体端。 ReferentialConstraint 元素定义的功能与关系数据库中的引用完整性约束类似。 与数据库表中的一个(或多个)列可以引用另一个表的主键相同,实体类型的一个(或多个)属性可以引用另一个实体类型的实体键。 所引用的实体类型称为约束的主体端**。 引用主体端的实体类型称为约束的依赖端**。 PropertyRef 元素用于指定依赖端引用哪些键。

Principal 元素可以具有以下子元素(按所列顺序):

适用的特性

下表介绍可应用于 Principal 元素的特性。

特性名称 是否必需

Role

关联的主体端的实体类型的名称。

Ee473441.note(zh-cn,VS.100).gif注意:
可以将任何数量的批注特性(自定义 XML 特性)应用于 Principal 元素。然而,自定义特性可能不属于为 CSDL 保留的任何 XML 命名空间。任何两个自定义特性的完全限定名称都不能相同。

示例

下面的示例显示作为 PublishedBy 关联的定义一部分的 ReferentialConstraint 元素。 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>

另请参见

概念

实体框架概述
CSDL 规范
Schema 元素 (CSDL)
Association 元素 (CSDL)
Dependent 元素 (CSDL)

其他资源

CSDL、SSDL 和 MSL 规范
ADO.NET Entity Data Model Tools