.NET EF框架的安装、及三种开发模式
一、EF框架的安装:
要在VS(如Visual Studio 2012)中使用EF框架,就需要先进行安装。
我们需要给这个应用安装EntityFramework包,引入EF框架相关的内容,我们需要引入EF相关程序集。但是我们有更好的选择那就是NuGet。通过NuGet进行在线安装:项目中右键选择"Manage NuGet Packages…”;选择Online;再选择“EntityFramework”;然后点击安装即可,具体参考下图。


二、EF安装好了之后,下来了解这三种开发模型:
1、代码优先(Code First)
第一步:创建实体类文件(即.class文件),在类文件中添加多个属性。可以创建多个类文件;
第二步:创建一个上下文类,它继承自DbContext,它包含了第一步中创建的所有类的实体的集合。
第三步:在App.Config文件中对数据库连接信息进行配置后,执行代码,可以看到所配置的数据库中已经生成了实体类文件对应的数据库和表,可参看下图。

2、数据库优先(Database First)
第一步:在MS SQL SERVER中创建一个数据库及表。
第二步:打开Visual Studio 2012,新建一个Web项目,选中项目->右键,选择"添加数据",选择“ADO.Net实体数据模型”,选择模型类型为“来自数据库的EF设计器”;
第三步:和第一步中创建的数据库进行建立链接;
第四步:选择链接到的数据库中的,要使用的数据表、视图、存储过程和函数,完成。最后可以在.edmx文件中看到映射出来的关系图和数据库中的表结构是对应的。
3、模型优先(Model First)
第一步:打开VS,新建项目,新建一个控制台项目即可
第二步:新建实体数据模型,项目右键——》点击添加—》新建项—》数据—》ADO.NET实体数据模型—》空模型—》会看到项目中新添加了一个.edmx文件。
第三步:修改“实体容器名称”:在.edmx的关系图中,空白处右键单击—》属性—》实体容器名称—》(修改成自己想要的名称)
第四步:添加实体,在.edmx中,空白处右键单击—》新增—》实体—》确定 。填写实体名称,修改实体集名称,以及修改属性名 。再在此实体上,右键单击—》新增—》标量属性,这里增加自己想要的字段即可,以及对此字段的属性修改。
同理即可新增多个实体。
第五步:添加关系,在.edmx中,空白处右键单击—》新增—》关联—》设置自己想要的关联关系—》确定
前面五步都是创建模型的过程。
第六步:生成数据库,在.edmx中,空白处右键单击—》根据模型生成数据库—》新建连接(设置好数据库连接)—》确定—》下一步(这时会生成sql语句代码)—》完成。
第七步:打开SQL代码文件,右键—》连接—》连接自己上文创建的数据库即可—》执行SQL代码即可,查看数据库,可以看到通过前面创建的模型已经生成了对应的数据库的表结构。
.NET EF框架的安装、及三种开发模式的更多相关文章
- 《ASP.NET MVC4 WEB编程》学习笔记------Entity Framework的Database First、Model First和Code Only三种开发模式
作者:张博出处:http://yilin.cnblogs.com Entity Framework支持Database First.Model First和Code Only三种开发模式,各模式的开发 ...
- APP的三种开发模式
转载于http://pleasureswx123.github.io/2014/09/15/APP%E7%9A%84%E4%B8%89%E7%A7%8D%E5%BC%80%E5%8F%91%E6%A8 ...
- EF3:Entity Framework三种开发模式实现数据访问
前言 Entity Framework支持Database First.Model First和Code Only三种开发模式,各模式的开发流程大相径庭,开发体验完全不一样.三种开发模式各有优缺点,对 ...
- Entity Framework:三种开发模式实现数据访问
原文地址 http://blog.csdn.net/syaguang2006/article/details/19606715 前言 Entity Framework支持Database First. ...
- ASP.NET的三种开发模式
前言 ASP.NET 是一个免费的Web开发框架,是由微软在.NET Framework框架中所提供的,或者说ASP.NET是开发Web应用程序的类库,封装在System.Web.dll 文件中.AS ...
- 虚拟机安装Ubuntu三种网络模式
VMWare提供三种工作模式桥接(bridge).NAT(网络地址转换)和host-only(主机模式). NAT(网络地址转换) 在NAT模式下,虚拟系统需要借助NAT(网络地址转换)功能,通过宿主 ...
- EntityFramework 学习 一 三种开发模式
Entity Framework支持3种不同的开发方法 1.Code First 2.Model First 3.Database First Code First 使用Code First开发模式, ...
- asp.net 的三种开发模式
一, Web Pages 是三种创建 ASP.NET 网站和 Web 应用程序的编程模式中的一种. 其他两种编程模式是 Web Forms 和 MVC(Model View Controller 模型 ...
- APP三种开发模式
目前主流应用程序大体分为三种:Web App(网页应用).Hybrid Ap(混合应用)p. Native App(原生应用). nativeapp是一个原生程序,一般运行在机器操作系统上,有很强的交 ...
随机推荐
- java_基础_abstract抽象关键字
java中,当父类中的某些东西不确定时,可以用abstract关键字将此类变成抽象类(也就是说类并不完整,有些东西要等待子类去实现) 注意事项: 1.抽象类中的抽象方法不能有实体,格式如下 publi ...
- [dev] 中文版内核代码编码规范
我是我最喜欢的编码规范.并始终坚持. https://www.kernel.org/doc/html/v4.15/translations/zh_CN/coding-style.html
- LeetCode 705 Design HashSet 解题报告
题目要求 Design a HashSet without using any built-in hash table libraries. To be specific, your design s ...
- FindVisualChild
public static List<T> FindVisualChild<T>(DependencyObject obj) where T : DependencyObjec ...
- 学号20175313 《Arrays和String单元测试》第八周
目录 Arrays和String单元测试 一.String类相关方法的单元测试 二.Arrays类相关方法的单元测试 三.测试过程中遇到的问题及其解决方法 四.码云链接 五.参考资料 Arrays和S ...
- H3C交换机引发的奇葩故障
设备:H3C S5120-28P-SI 故障:某个交换机的接口速率只有100Mbps. 描述:这个故障还是很特别的,因为按普通的测试办法很难第一时间判断是交换机的固件问题,我也是做了几乎所有外围设备和 ...
- 【LeetCode每天一题】Edit Distance(编辑距离)
Given two words word1 and word2, find the minimum number of operations required to convert word1 to ...
- python类与对象-如何创建可管理的对象属性
如何创建可管理的对象属性 问题举例 在面向对象编程中, 我们把方法看作对象的接口, 直接访问对象的属性可能是不安全的,或设计上不够灵活. 但是使用调用方法在形式上不如访问属性简洁. circle.ge ...
- CDI services--interceptors(拦截器)
1.拦截器综述 拦截器的功能是定义在Java拦截器规范. 拦截器规范定义了三种拦截点: 业务方法拦截, 生命周期回调侦听, 超时拦截(EJB)方法. 在容器的生命周期中进行拦截 1 2 3 4 pub ...
- qt 画多边形(实现鼠标拖动节点)
---恢复内容开始--- 2018-01-06 这个小例子实现了移动鼠标,鼠标的坐标信息跟随鼠标移动,多边形的实现,鼠标点击可以拖动多边形点的位置,(其中有个问题?我在QMainWindow下,用mo ...