热门文章
电 话:023-6276-4481
邮箱:broiling@qq.com
地址:重庆市南岸区亚太商谷6幢25-2
注意: 此页提供有关如何设置在你的模型使用关系信息Ef设计师。有关在关系的一般信息Ef和如何访问和操作数据使用关系,请参阅关系和导航属性。
协会 d Ef ine 模型中的实体类型之间的关系。本主题演示如何映射与实体框架设计师协会 (Ef设计师)。下图显示了当使用时,使用的主窗口Ef设计师。
.png)
注意: 当您构建概念模型时,关于未映射的实体和关联的警告可能出现错误列表中。因为你选择从模型生成数据库后,错误将消失,您可以忽略这些警告。
本主题演示如何执行以下任务。
协会概述
创建和删除协会
在您的实体包括外键属性 (REf微分约束)
创建和编辑关联映射
编辑和删除导航属性
当您设计您的模型使用Ef设计器,一个.edmx 文件表示您的模型。在.edmx 文件中,协会元素 d Ef ines 两个实体类型之间的关系。协会必须在关系和尽可能多的被称为多样性的关系每一端的实体类型中指定涉及的实体类型。关联端的多重性可以有一个值的一 (1),零个或一个 (0..1),或很多的 (*)。此信息是在两个孩子结束元素中指定的。
在运行时,在协会的一端的实体类型实例可以访问通过导航属性或外键,(如果你选择公开您的实体中的外键)。暴露的外键,实体之间的关系管理与 R Ef erentialConstraint 元素 (关联元素的子元素)。建议您始终在您的实体中公开了关系的外键。
注意: 在多对多 (*: *) 你不能向实体中添加外键。在 *: * 关系,关联信息管理与一个独立的对象。
CSDL 元素有关的信息 (R Ef erentialConstraint,协会,等等),请参见 CSDL 规范
创建关联与Ef设计器更新模型的.edmx 文件的内容。创建后协会,你必须创建协会 (在本主题后面讨论) 的映射。
注: 本节假定您已经添加您想要创建到您的模型之间的关联的实体。
右键单击设计图面空白区域,指向新添加,选择关联……
填写在添加关联对话框中关联的设置。.png)
注意: 您可以选择不添加导航属性或外键属性两端的关联实体通过清除导航属性并添加外键属性到 < 实体类型名称 > 实体对应的复选框。如果您添加一个导航属性,该协会将可遍历只在一个方向。如果您添加没有导航属性,您必须选择添加外键属性来访问实体两端的协会。
单击确定。
若要删除协会做下列操作之一:
用鼠标右键单击该协会Ef设计器表面,然后选择删除。
-或-
选择一个或多个协会,然后按 DELETE 键。
建议您始终在您的实体中公开了关系的外键。实体框架使用 rEf微分约束来标识属性作为外键的关系。
如果你选中添加外键属性中的 < 实体类型名称 > 实体复选框创建关系,这个 r 时Ef为你增加微分约束条件。
当您使用Ef设计器添加或编辑 rEf微分约束Ef设计器添加或修改 R Ef CSDL 内容的.edmx 文件中的 erentialConstraint 元素。
双击您要编辑的关联。
REf微分约束对话框出现。
从校长的下拉列表中,选择主要实体在 rEf微分约束。
实体的键属性添加到对话框中的主要关键列表。
依赖的下拉列表中,选择中的相关实体在 rEf微分约束。
有一个依赖于密钥的每个主要密钥,从依赖键列中的下拉列表选择相应的相关密钥。.png)
单击确定。
您可以指定如何关联映射到数据库中的映射详细信息窗口Ef设计师。
注: 您只能映射详细信息没有研发协会Ef指定的微分约束。如果 rEf微分约束指定外键属性包括实体中然后你可用于控制哪一列的外键映射到实体的映射的详细信息。
右键单击设计图面中的关联并选择表映射。
这在映射详细信息窗口中显示关联映射。
单击添加一个表或视图。
显示一个下拉列表,包含存储模型中的所有表格。
选择该协会将映射到其中的表。
映射详细信息窗口显示在每个末端两端的协会和实体类型的键属性。
为每个键的属性,请单击列字段,并选择属性将映射到其中的列。.png)
右键单击设计图面中的关联并选择表映射。
这在映射详细信息窗口中显示关联映射。
单击映射到 < 表名称 >。
显示一个下拉列表,包含存储模型中的所有表格。
选择该协会将映射到其中的表。
映射详细信息窗口显示在每个末端两端的协会和实体类型的键属性。
为每个键的属性,请单击列字段,并选择属性将映射到其中的列。
导航属性是关联的用于在模型中找到两端实体的快捷方式属性。当您创建两个实体类型之间的关联,可以创建导航属性。
选择一个导航属性上Ef设计器图面。
关于导航属性的信息显示在 Visual Studio 属性窗口。
更改属性窗口中的属性设置。
如果外键不会公开对概念模型中的实体类型,删除导航属性可相应关联可遍历只在一个方向或不可遍历根本。
用鼠标右键单击一个导航属性Ef设计器表面,然后选择删除。