如何:使用 ADO.NET 实体框架数据源创建数据服务(WCF 数据服务)

WCF 数据服务 将实体数据作为数据服务公开。 如果数据源为关系数据库,则此实体数据是由 ADO.NET 实体框架提供的。 本主题介绍如何在基于现有数据库的 Visual Studio Web 应用程序中创建基于实体框架的数据模型,以及如何使用此数据模型创建新的数据服务。

实体框架还提供了一个可以在 Visual Studio 项目外部生成实体框架模型的命令行工具。 有关更多信息,请参见How to: Use EdmGen.exe to Generate an Entity Data Model (Entity Framework)

将基于现有数据库的实体框架模型添加到现有 Web 应用程序

  1. 在**“项目”菜单上单击“添加新项”**。

  2. 在**“模板”窗格中,单击“数据”类别,然后选择“ADO.NET 实体数据模型”**。

  3. 键入模型名称,然后单击**“添加”**。

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

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

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

  6. 在**“连接属性”对话框中,键入服务器名称,选择身份验证方法,键入数据库名称,然后单击“确定”**。

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

  7. 确保选中**“将 App.Config 中的实体连接设置另存为:”复选框。 然后,单击“下一步”**。

  8. 在**“选择数据库对象”**对话框中,选择计划在数据服务中公开的所有数据库对象。

    备注

    数据服务不自动公开数据模型中包含的对象。它们必须由服务本身显式公开。有关更多信息,请参见配置数据服务(WCF 数据服务)

  9. 单击**“完成”**以完成向导。

    这将基于特定数据库创建默认数据模型。 实体框架允许对数据模型进行自定义。 有关更多信息,请参见Entity Data Model Tools Tasks

使用新数据模型创建数据服务

  1. 在 Visual Studio 中,打开代表数据模型的 .edmx 文件。

  2. 在**“模型浏览器”中,右击模型,单击“属性”**,然后记下实体容器的名称。

  3. 在**“解决方案资源管理器”中,右击 ASP.NET 项目的名称,然后单击“添加新项”**。

  4. 在**“添加新项”对话框中,选择“WCF 数据服务”**。

  5. 指定服务的名称,然后单击**“确定”**。

    Visual Studio 将为新服务创建 XML 标记和代码文件。 默认情况下,代码编辑器窗口将打开。

  6. 在数据服务代码中,将用于定义数据服务的类定义中的注释 /* TODO: put your data source class name here */ 替换为从 ObjectContext 类继承且作为数据模型的实体容器的类型,如步骤 2 中所述。

  7. 在数据服务代码中,启用经过授权的客户端来访问数据服务公开的实体集。 有关更多信息,请参见创建 Northwind 数据服务(WCF Data Services 快速入门)

  8. 若要使用 Web 浏览器测试 Northwind.svc 数据服务,请按照从 Web 浏览器访问 OData 源(WCF Data Services 快速入门)主题中的说明操作。

请参阅

任务

如何:使用反射提供程序创建数据服务(WCF 数据服务)

如何:使用 LINQ to SQL 数据源创建数据服务(WCF 数据服务)

概念

数据服务提供程序 (WCF Data Services)

其他资源

数据服务 (WCF Data Services)