每个模型多个关系图
注意
仅限 EF5 及更高版本 - 此页面中讨论的功能、API 等已引入实体框架 5。 如果使用的是早期版本,则部分或全部信息不适用。
本视频和页面介绍如何使用实体框架设计器(EF 设计器)将模型拆分为多个关系图。 当模型变得太大,无法查看或编辑时,你可能需要使用此功能。
在 EF 设计器的早期版本中,每个 EDMX 文件只能有一个关系图。 从 Visual Studio 2012 开始,可以使用 EF 设计器将 EDMX 文件拆分为多个关系图。
观看视频
本视频介绍如何使用实体框架设计器(EF 设计器)将模型拆分为多个关系图。 当模型变得太大,无法查看或编辑时,你可能需要使用此功能。
主讲人:Julia Kornich
EF 设计器概述
当你使用 EF 设计器的实体数据模型向导创建模型时,系统会创建一个 .edmx 文件并将其添加到你的解决方案中。 此文件定义实体的形状以及它们如何映射到数据库。
EF 设计器由以下组件构成:
- 用于编辑模型的可视化设计图面。 您可以创建、修改或删除实体和关联。
- “模型浏览器”窗口提供模型的树状视图。 实体及其关联位于 [ModelName] 文件夹下。 数据库表和约束位于 [ModelName].Store 文件夹下。
- 用于查看和编辑映射的“映射详细信息”窗口。 您可以将实体类型或关联映射到数据库表、列和存储过程。
实体数据模型向导完成后,将自动打开可视化设计图面窗口。 如果模型浏览器不可见,请右键单击主设计图面,然后选择“模型浏览器”。
以下屏幕截图展示了在 EF 设计器中打开的 .edmx 文件。 该屏幕截图展示了可视化设计图面(左侧)和“模型浏览器”窗口(右侧)。
若要撤消在 EF 设计器中完成的操作,请单击 Ctrl-Z。
使用关系图
默认情况下,EF 设计器会创建一个名为 Diagram1 的关系图。 如果关系图中包含大量实体和关联,你极有可能想按逻辑拆分它们。 从 Visual Studio 2012 开始,你可以在多个关系图中查看概念模型。
添加新的关系图时,它们会出现在“模型浏览器”窗口的 Diagrams 文件夹下。 若要重命名关系图,请在“模型浏览器”窗口中选择关系图,在名称上单击一次,然后键入新名称。 你也可以右键单击关系图名称并选择“重命名”。
在 Visual Studio 编辑器中,关系图名称显示在 .edmx 文件名旁边。 例如 Model1.edmx[Diagram1]。
关系图内容(实体和关联的形状和颜色)存储在 .edmx.diagram 文件中。 若要查看此文件,请选择解决方案资源管理器并展开 .edmx 文件。
不应手动编辑 .edmx.diagram 文件,此文件的内容可能会被 EF 设计器覆盖。
将实体和关联拆分到新关系图中
你可以选择现有关系图上的实体(按住 Shift 选择多个实体)。 单击鼠标右键并选择“移至新关系图”。 系统会创建新关系图,并将所选实体及其关联移动到该关系图中。
或者,你可以右键单击模型浏览器中的 Diagrams 文件夹并选择“添加新关系图”。然后,可以将实体从模型浏览器中的 Entity Types 文件夹下拖放到设计图面上。
你还可以从一个关系图中剪切或复制实体(使用 Ctrl-X 或 Ctrl-C 键)并粘贴(使用 Ctrl-V 键)到另一个关系图上。 如果要将实体粘贴到其中的关系图已经包含一个同名实体,则会创建一个新实体并将其添加到模型中。 例如:Diagram2 包含 Department 实体。 然后,在 Diagram2 上粘贴另一个 Department。 系统会创建 Department1 实体并将其添加到概念模型中。
若要在关系图中包含相关实体,请右键单击实体并选择“包含相关”。 这将复制指定关系图中的相关实体和关联。
更改实体颜色
除了将模型拆分为多个关系图之外,还可以更改实体的颜色。
若要更改颜色,请在设计图面上选择一个实体(或多个实体)。 然后,单击鼠标右键并选择“属性”。 在“属性”窗口中,选择“填充颜色”属性。 使用有效的颜色名称(例如,红色)或有效的 RGB(例如,255、128、128)指定颜色。
总结
在本主题中,我们研究了如何将模型拆分为多个关系图,以及如何使用实体框架设计器为实体指定不同的颜色。