关联类型(实体数据模型)

**“关联类型”(也称为关联)是用来描述实体数据模型 (EDM) 中的关系的基本构造块。 在概念模型中,关联表示两个实体类型(例如 CustomerOrder)之间的关系。 在应用程序中,一个关联实例表示一个特定的关联(例如 Customer 实例与 Order 实例之间的关联)。 关联实例按逻辑分组在关联集中。

关联定义包含以下信息:

  • 一个唯一名称。 (必需)

  • 两个关联端,关系中的每个实体类型一个。 (必需)

    Ee382823.note(zh-cn,VS.100).gif注意:
    关联不能表示两个以上的实体类型之间的关系。但是,通过为每个关联端指定相同的实体类型,关联可以定义自身关系。

  • 一个引用完整性约束。 (可选)

每个关联端必须指定一个关联端重数,它表明在关联的一端可以存在的实体类型实例的数量。 关联端重数的值可以为“一 (1)”、“零或一 (0..1)”或“多 (*)”。 通过导航属性或外键(如果实体类型上有)可以访问关联某一端的实体类型实例。 有关更多信息,请参见实体数据模型:外键

示例

下图显示了一个具有两个关联的概念模型:PublishedByWrittenByPublishedBy 关联的关联端是 BookPublisher 实体类型。 Publisher 端的重数为“一 (1)”,Book 端的重数为“多 (*)”,表明一个出版商可以出版很多书,而一本书只能由一个出版商出版。

示例模型

ADO.NET 实体框架使用一种称为概念架构定义语言 (CSDL) 的域特定语言 (DSL) 来定义概念模型。 下面的 CSDL 定义了上图中显示的 PublishedBy 关联:

<Association Name="PublishedBy">
      <End Type="BooksModel.Book" Role="Book" Multiplicity="*" />
      <End Type="BooksModel.Publisher" Role="Publisher" Multiplicity="1" />
    </Association>

另请参见

概念

实体数据模型关键概念
实体数据模型