如果在 Visual Studio 项目中使用实体数据模型向导,该向导将自动生成 .edmx 文件并将该项目配置为使用实体框架。有关更多信息,请参见 如何:使用实体数据模型向导(实体框架)。 也可以手动将 Visual Studio 项目配置为使用实体框架。如果手动定义了模型和映射文件或使用 EDM 生成器 (EdmGen.exe) 实用工具定义了它们,则需要这样做。

本主题中的示例使用 AdventureWorks 销售模型的模型和映射文件。 AdventureWorks 销售模型将在实体框架文档的与任务相关的所有主题中使用。

将 Visual Studio 项目配置为使用 AdventureWorks 销售模型

  1. 在 “解决方案资源管理器”中,将程序集引用添加到 “System.Data.Entity.dll”和 “System.Runtime.Serialization.dll”中。

  2. 将以下模型和映射文件添加到该项目中:

    • AdventureWorks.csdl

    • AdventureWorks.msl

    • AdventureWorks.ssdl

    有关创建这些文件的信息,请参见 如何:手动定义模型和映射文件(实体框架)。

  3. 选中刚添加到项目目录中的三个文件。在 “项目”菜单上,单击 “包括在项目中”。

  4. 选中添加到项目目录中的三个文件。在 “项目”菜单上,单击 “属性”。

  5. 在“属性”窗格中,将 “复制到输出目录”设置为 “如果较新则复制”。

  6. 打开项目的应用程序配置文件 (App.config) 并添加以下连接字符串:

    xml
    以带有颜色区分的格式查看复制到剪贴板打印
        <add name="AdventureWorksEntities" connectionString="metadata=.\AdventureWorks.csdl|.\AdventureWorks.ssdl|.\AdventureWorks.msl;provider=System.Data.SqlClient;provider connection string='Data Source=localhost;Initial Catalog=AdventureWorks;Integrated Security=True;Connection Timeout=60;multipleactiveresultsets=true'" providerName="System.Data.EntityClient" />

        <add name="AdventureWorksEntities" connectionString="metadata=.\AdventureWorks.csdl|.\AdventureWorks.ssdl|.\AdventureWorks.msl;provider=System.Data.SqlClient;provider connection string='Data Source=localhost;Initial Catalog=AdventureWorks;Integrated Security=True;Connection Timeout=60;multipleactiveresultsets=true'" providerName="System.Data.EntityClient" />

    如果项目没有应用程序配置文件,可以通过从 “项目”菜单中选择 “添加新项”,选择 “常规”类别,接着选择 “应用程序配置文件”,然后单击 “添加”,以添加应用程序配置文件。

  7. 在项目目录中的命令提示符下,针对项目运行适当的命令(删除换行符):

    • 对于 C#:

      以带有颜色区分的格式查看复制到剪贴板打印
      "%windir%\Microsoft.NET\Framework\v3.5\edmgen.exe" /mode:EntityClassGeneration
      /incsdl:.\AdventureWorks.csdl /outobjectlayer:.\AdventureWorks.Objects.cs /language:CSharp

      "%windir%\Microsoft.NET\Framework\v3.5\edmgen.exe" /mode:EntityClassGeneration
      /incsdl:.\AdventureWorks.csdl /outobjectlayer:.\AdventureWorks.Objects.cs /language:CSharp

    • 对于 Visual Basic:

      以带有颜色区分的格式查看复制到剪贴板打印
      "%windir%\Microsoft.NET\Framework\v3.5\edmgen.exe" /mode:EntityClassGeneration
      /incsdl:.\AdventureWorks.csdl /outobjectlayer:.\AdventureWorks.Objects.vb /language:VB

      "%windir%\Microsoft.NET\Framework\v3.5\edmgen.exe" /mode:EntityClassGeneration
      /incsdl:.\AdventureWorks.csdl /outobjectlayer:.\AdventureWorks.Objects.vb /language:VB

    这将在 C# 或 Visual Basic 中生成一个基于概念模型的对象层文件。

  8. 将在上一步中生成的对象层文件添加到项目中。

  9. 在应用程序的代码页中,添加以下 using 语句(在 Visual Basic 中为 Imports):

    以带有颜色区分的格式查看复制到剪贴板打印
    using System;using System.Linq;using System.Collections.Generic;using System.Text;using System.Data;using System.Data.Common;using System.Data.Objects;using System.Data.Objects.DataClasses;

转载于:https://www.cnblogs.com/bmate/archive/2010/12/29/1920548.html

ADO.NET Entity Framework如何:手动配置实体框架项目相关推荐

  1. ADO.NET Entity Framework如何:使用实体数据模型向导(实体框架)

    本主题演示如何使用实体数据模型向导来生成 AdventureWorks 销售 .edmx 文件以及将 Visual Studio 项目配置为使用实体框架. 此模型和配置将在任务相关的各个实体框架主题中 ...

  2. java EF6,EF Core 2.0和EF6(Entity Framework 6)中配置实体映射关系

    1.EF6中通过EntityTypeConfiguration配置实体映射关系代码 public class AccountMap : EntityTypeConfiguration { public ...

  3. ADO.NET Entity Framework建模和映射(实体框架)

    在实体框架中,可以采用最适合您应用程序的方式定义概念模型.存储模型以及这两种模型之间的映射.使用 Visual Studio 中的实体数据模型工具,可以从数据库或图形模型创建一个 . edmx 文件, ...

  4. ADO.NET Entity Framework如何:通过每种类型一个表继承以定义模型(实体框架)

    本主题介绍如何手动创建具有每种类型一个表继承层次结构的概念模型.每种类型一个表继承使用数据库中单独的表为继承层次结构中的每种类型维护非继承属性和键属性的数据. 说明: 建议使用 ADO.NET 实体数 ...

  5. ADO.NET Entity Framework Beta2(五)/快速入门(实体框架)

    This quickstart illustrates a series of tasks that support the topics in Getting Started with the En ...

  6. 利用泛型与反射更新实体(ADO.NET Entity Framework)

    自从ADO.NET Entity Framework面世以来,受到大家的热捧,它封装了大量代码生成的工具,用户只需要建立好实体之间的关系,系统就是会为用户自动成功了Add.Delete.CreateO ...

  7. ADO.NET Entity Framework 简介

    一直对EF都是一知半解的,没有系统的了解过EF有什么样的功能,有什么具体的好处.在接下来的文章中会详细介绍EF.以下是参考MSDN上的文章,翻译并加以自己的理解得出的. ADO.NET Entity  ...

  8. Entity Framework 关系约束配置

    前言 简单的说一下自己的理解,大家应该都很明白ADO.NET,也就是原生态的数据库操作,直接通过拼接SQL语句,表与表之间通过链接(inner join  left join  或者子查询),也就是在 ...

  9. 自定义Unity对象生命周期管理集成ADO.NET Entity Framework

    在Unity中,从Unity 取得的实例为 Transient.如果你希望使用多线程方式,就需要在组成时使用lifecycle参数,这时候取出的组件就不再是同一个了.在Unity IOC中,它支持我们 ...

最新文章

  1. 宏基因组公众号14天受邀原创-诚邀同行共享研究经验
  2. UVA10341解方程(二分)
  3. 初识contiki(2.7版本)
  4. r语言remarkdown展示图_R语言—自动报告Markdown笔记
  5. maven 整体打包_Spirng boot maven多模块打包不踩坑(示例代码)
  6. 消息(4)——WS附件传输,包体中的base64编码附件
  7. js时间搓化为今天明天_踩雷预警!爆款好物怎么都变成了“搓泥宝”?
  8. 月薪 100K?还不来看看区块链学习清单?字字都是 Money!
  9. 新书推荐:可爱的Python
  10. 微服务 注册中心的作用_微服务-服务与注册中心
  11. 5000元档投影仪挑选指南,当贝F3与极米H3两款旗舰级投影到底怎么选?
  12. oracle sql 自动补位数
  13. 天池比赛——Docker基础镜像搭建,容器导出镜像
  14. Python数据分析与机器学习实战<九>titanic数据集分析实例
  15. Python3.x爬虫教程:爬网页、爬图片、自动登录
  16. 一个极简操作系统的代码实现
  17. 2021年低压电工实操考试视频及低压电工考试试题
  18. Obsidian + remotely save + 坚果云:实现电脑端和手机端的同步
  19. Xcode 报错 xcrun: error: active developer path(/Applications/Xcode.app/Contents/...does not exist问题解决。
  20. 衡量风控策略区分度的三步法

热门文章

  1. 河南acret计算机报名,Acret, Ex Parte U.S. Supreme Court Transcript of Record with Supporting Pleadings...
  2. mysql中的字典项是啥_常见数据库设计(1)——字典数据
  3. 一篇讲清:如何构建可重复,可扩展且盈利的“魔力”转化流程?
  4. 中商惠民签约神策数据 致力为客户提供最优服务模式
  5. 前端要凉?微软开源Sketch2Code,草图秒变代码
  6. 《编程珠玑(第2版•修订版)》—第2章2.5节原理
  7. Spring MVC不要在@Service bean中保存状态
  8. type=InnoDB ENGINE=InnoDB
  9. posix多线程有感--线程高级编程(条件变量)
  10. 阅读《第31次中国互联网络发展状况统计报告》,分析中国互联网发展趋势和特点...