如何:创建新的 .edmx 文件(实体数据模型工具)

本主题介绍如何使用实体数据模型向导创建新的 .edmx 文件。 该 .edmx 文件包含概念模型、存储模型以及这两个模型之间的映射。 本主题中的过程介绍如何生成基于现有数据库的 .edmx 文件以及如何生成空的 .edmx 文件。

Cc716703.note(zh-cn,VS.100).gif注意:
生成空的 .edmx 文件之后,可以使用 ADO.NET 实体数据模型设计器(实体设计器)来创建实体和关系。然后可以使用创建数据库向导从 .edmx 文件生成数据库。有关更多信息,请参见如何:根据概念模型生成数据库(实体数据模型工具)

有关 .edmx 文件的更多信息,请参见 .edmx 文件概述(实体框架)。 可以将 .edmx 文件包含在以下 Visual Studio 项目类别中:

  • 应用程序项目

  • 类库

  • Web 项目

可以向同一项目添加多个 .edmx 文件并且每个文件可以针对不同的数据库、同一数据库中不同的表或同时针对两者。

从现有数据库创建 .edmx 文件

  1. 打开或创建要为其创建 .edmx 文件的项目。

  2. “解决方案资源管理器”中右击该项目的名称,指向“添加”,然后单击“新建项”

  3. “模板”窗格中,选择“ADO.NET 实体数据模型”

  4. 输入该文件的名称(<项目名称>.edmx),然后单击“添加”

    此时将显示“实体数据模型向导”的第一页。

  5. “选择模型内容”对话框中选择“从数据库生成”,然后单击“下一步”

  6. 单击“新建连接”按钮。

    此时出现“连接属性”对话框。

  7. 输入服务器名称,选择身份验证方法,输入要为其创建模型的数据库的名称。 单击“确定”

    “选择您的数据连接”对话框将以数据库连接设置更新。

    Cc716703.note(zh-cn,VS.100).gif注意:
    默认情况下,实体连接设置保存在 App.config 或 Web.config 文件中(取决于项目类型)。为连接键入一个名称,或者使用提供的默认名称。如果不希望将连接信息保存在配置文件中,请清除“保存实体连接设置”复选框。有关保存连接设置的更多信息,请参见“选择您的数据连接”对话框(实体数据模型向导)

  8. 单击“下一步”继续。

    此时出现“选择数据库对象”对话框。 默认情况下,不选择数据库中的任何对象用于包含在 .edmx 文件中。

  9. 展开表、视图和存储过程的节点。 取消选择不希望包含在 .edmx 文件中的任何表、视图和存储过程。

    Cc716703.note(zh-cn,VS.100).gif注意:
    从概念模型生成的类将位于“模型命名空间”中。为命名空间键入一个名称,或者使用提供的默认名称。有关更多信息,请参见生成的代码概述(实体数据模型设计器)

  10. 单击“完成”创建 .edmx 文件。

    实体数据模型向导执行以下操作:

    • 在项目中添加对 System.Data、System.Data.Entity、System.Core、System.Security 和 System.Runtime.Serialization 程序集的引用(如果这些引用尚未存在)。

    • 生成包装存储模型、概念模型和映射的 .edmx 文件。

    • 创建包含从概念模型生成的类的源代码文件。 通过在“解决方案资源管理器”中展开 .edmx 节点,可以查看该源代码文件。 在 Visual Basic 项目中,必须先在“解决方案资源管理器”中单击“显示所有文件”按钮,展开 .edmx 节点,然后才能查看源代码文件。

    Cc716703.note(zh-cn,VS.100).gif注意:
    将从 .edmx 文件生成该源代码文件。当相应的 .edmx 文件发生更改时,该源代码文件的任何手动更改都将被覆盖。若要避免覆盖自定义代码,可以书写存储在单独的文件中的分部类。有关更多信息,请参见Customizing Objects (Entity Framework)

    • 创建 App.Config 或 Web.Config 文件(根据项目类型)。

    • 对于 ASP.NET 网站项目,在 Web.config 文件中定义一个生成提供程序。

    • 在 ADO.NET 实体数据模型设计器(实体设计器)中显示概念模型。 有关如何使用实体设计器修改模型的信息,请参见 实体数据模型工具任务实体数据模型工具方案

有关从现有数据库创建实际模型的示例,请参见Quickstart (Entity Framework)

创建空的 .edmx 文件

  1. 打开或创建要为其创建 .edmx 文件的项目。

  2. “解决方案资源管理器”中右击该项目的名称,指向“添加”,然后单击“新建项”

  3. “模板”窗格中,选择“ADO.NET 实体数据模型”

  4. 输入该文件的名称(<项目名称>.edmx),然后单击“添加”

    此时将显示“实体数据模型向导”的第一页。

  5. “选择模型内容”对话框中选择“空模型”,然后单击“完成”

    实体数据模型向导执行以下操作:

    • 在项目中添加对 System.Data、System.Data.Entity、System.Core、System.Security 和 System.Runtime.Serialization 程序集的引用(如果这些引用尚未存在)。

    • 生成 .edmx 文件以包装存储模型、概念模型和映射。

    Cc716703.note(zh-cn,VS.100).gif注意:
    生成的 .edmx 文件不包含存储、概念或映射信息。有关如何手动修改此文件的信息,请参见Mapping Schemas and Storage Metadata (EDM)。有关从概念模型生成数据库的信息,请参见“生成数据库”向导(实体数据模型工具)如何:根据概念模型生成数据库(实体数据模型工具)

    • 创建空的源代码文件以包含从概念模型生成的类。 通过在“解决方案资源管理器”中展开 .edmx 节点,可以查看该源代码文件。 在 Visual Basic 项目中,必须先在“解决方案资源管理器”中单击“显示所有文件”按钮,展开 .edmx 节点,然后才能查看源代码文件。
    Cc716703.note(zh-cn,VS.100).gif注意:
    将从 .edmx 文件生成该源代码文件。当相应的 .edmx 文件发生更改时,该源代码文件的任何手动更改都将被覆盖。

另请参见

概念

使用概念模型创建应用程序(实体数据模型工具)

其他资源

实体数据模型工具任务