如何:创建 LINQ to SQL 类之间的关联(关系)(O/R 设计器)

LINQ to SQL 中实体类之间的关联类似于数据库中表之间的关系。 可以使用**“关联编辑器”**对话框创建实体类之间的关联。

使用**“关联编辑器”**对话框创建关联时,必须选择父类和子类。 父类是包含主键的实体类;子类是包含外键的实体类。 例如,如果创建映射到 Northwind Customers 和 Orders 表的实体类,则 Customer 类将是父类,而 Order 类将是子类。

提示

将表从“服务器资源管理器”/“数据库资源管理器”拖动到对象关系设计器(O/R 设计器)上时,将根据数据库中现有的外键关系自动创建关联。

创建关联后,当您在 O/R 设计器中选择该关联时,**“属性”**窗口中将有一些可配置属性。 (关联是用相关类之间的连线表示的。)下表提供对关联的属性的说明。

属性

说明

基数

控制关联是一对多关系还是一对一关系。

子属性

指定是否在父类上创建一个属性,作为关联关系外键一方上的子记录的集合或对这些子记录的引用。 例如,在 Customer 和 Order 之间的关联中,如果“子属性”设置为“True”,则将在父类上创建一个名为 Orders 的属性。

父属性

子类上引用关联父类的属性。 例如,在 Customer 和 Order 之间的关联中,在 Order 类上创建一个名为 Customer 的属性,用来引用与订单关联的客户。

参与属性

显示关联属性,并提供一个“省略号”按钮 (...),该按钮可重新打开“关联编辑器”对话框。

唯一

指定外目标列是否具有唯一性约束。

创建实体类之间的关联

  1. 右击表示关联中的父类的实体类,指向**“添加”,然后单击关联**。

  2. 验证在**“关联编辑器”对话框中是否选择了正确的“父类”**。

  3. 选择组合框中的**“子类”**。

  4. 选择实现类之间的关联的**“关联属性”。 通常,这种关联对应于数据库中定义的外键关系。 例如,在 Customers 和 Orders 关联中,“关联属性”**是每个类的 CustomerID。

  5. 单击**“确定”**创建关联。

请参见

任务

演练:创建 LINQ to SQL 类(O/R 设计器)

如何:表示主键 (LINQ to SQL)

概念

O/R 设计器概述

DataContext 方法(O/R 设计器)

其他资源

LINQ to SQL