关于Entity Framework使用的简单例子
一、创建Code First模型
1.创建工程,这里我使用的是以.NET 4.0为目标的实体Web应用程序

2.安装Entity Framework
确保已安装NuGet,选择NuGet套件管理员>管理方案的NuGet套件,搜索并安装Entity Framework,
这时,会安装最新版的Entity Framework,并应用到刚新建的工程项目中。


若之前已经安装过Entity Framework,需要将Entity Framework整合到当前项目的话,请选择
NuGet套件管理员>套件管理器主控台,键入:
PM > Install-Package EntityFramework
需要注意的是整合完成后需要手动添加System.Data.Entity dll参考,因为在整合过程中会将其移除。
3.安装Entity Framework Power Tool
在工具>扩展管理员中搜索并安装Entity Framework Power Tool
安装完成后在项目名称上右键会出现Entity Framework > Reverse Engineer Code First

4.使用Entity Framework > Reverse Engineer Code First将现有数据库生成domain Class
(至于如何生成数据库,可以新建一个工程并利用Model Designer设计完成,从模型生成数据库)

完成后会出现Model文件夹,且在web.config中会加入一个连接字符串

至此就完成了初始设计工作。
二、使用Migration进行数据模型更改
利用Code First更改数据库模型
1.启用Migration
同样在套件管理器主控台中输入
PM> Enable-Migrations
会加入一个Migration的文件夹

2.修改初始化信息
在生成的DBContext.cs文件中,
修改静态构造函数中的Database.SetInitializer<XXXDBContext>(null);
为Database.SetInitializer<XXXDBContext>(new MigrateDatabaseToLatestVersion<XXXDBContext, 工程项目名称.Migrations.Configuration>("刚建立的连接字符串名称"));
3.加入Migration(XXXSchemaName为任意指定名称)
PM> add-migration XXXSchemaName
成功后显示如下,同时注意到在Migration文件夹下自动生成了一个带有日期的cs文件

4.同步Migrations到数据库
PM> update-database -Verbose
在第一次运行时会创建数据库,但因为数据库中已经存在了该数据库,请更换数据库连接字串或者删除数据表再运行,
之后的update行为则不存在该问题。
5.还原迁移
update-database -TargetMigration:"First School DB schema"
关于Entity Framework使用的简单例子的更多相关文章
- Entity Framework Demo(一) 简单搭建环境
Entity Framwork(实体框架,简称EF)是ORM(Object Relational Mapping,对象映射关系)的一个解决方案. EF允许项目将数据库的表映射为实体,并封装了操作方法, ...
- [转]解决:Entity Framework + MariaDb(MySql)中文乱码
转自:http://fenglongsheng.com/post/6640.html 今天写一MVC4+Entity Framework+Mysql的小例子时,发现中文写到数据库里是N个问号(乱码哦~ ...
- Entity Framework 笔记(一)
Entity Framework概述 EF是一个对象关系映射(ORM)框架,允许开发人员使用特定于域的对象关系型数据,开发人员通常不需要编写大量的数据访问代码.使用EF,开发者可以利用LINQ进行查询 ...
- Entity Framework 学习整理(分播客整理)
MSDN: http://msdn.microsoft.com/en-us/data/aa937723 台湾博客: http://www.dotblogs.com.tw/yc421206/ http: ...
- Entity Framework 学习整理
MSDN: http://msdn.microsoft.com/en-us/data/aa937723 台湾博客: http://www.dotblogs.com.tw/yc421206/ http: ...
- 一个最简单的使用Entity Framework 查询SQL 数据库的例子
1.ADO.NET 3.5 Entity Framework是随着.net framework 3.5一起发布的,确认开发环境版本是大于等于3.5版本 2.确认已经安装了ADO.NET 3.5 Ent ...
- 开发 ASP.NET vNext 续篇:云优化的概念、Entity Framework 7.0、简单吞吐量压力测试
继续上一篇<开发 ASP.NET vNext 初步总结(使用Visual Studio 2014 CTP1)>之后, 关于云优化和版本控制: 我本想做一下MAC和LINUX的self-ho ...
- Entity Framework 简单查询
前言 首先来简单的复习一下如何使用Code First. 第一步还是先建立一个控制台的应用程序,然后通过Nuget添加Entity Framework.那么同时会给packages.config和Ap ...
- 云优化的概念、Entity Framework 7.0、简单吞吐量压力测试
云优化的概念.Entity Framework 7.0.简单吞吐量压力测试 继续上一篇<开发 ASP.NET vNext 初步总结(使用Visual Studio 2014 CTP1)>之 ...
随机推荐
- 查找html中的某个事件
打开浏览器的调试功能,以chrome为例,按F12打开调试窗口,切换到Sources选项卡,最右边的Event Listener Breakpoints里勾选Mouse下的mouseover即可,当你 ...
- windows下修复Linux引导 and linux下几个常用软件
在这里,我选择的是deepinLinux,不用说,高端大气上档次! Linux下引导修复 在win7上安装好了Linux,一不小心Linux系统启动不了 (一不小心的过程,想使用root登录图像界面, ...
- Linux yum配置文件详解
说明:经过网上抄袭和自己的总结加实验,非常详细,可留作参考. yum的配置一般有两种方式: 一种是直接配置/etc目录下的yum.conf文件, 另外一种是在/etc/yum.repos.d目录下 ...
- 朴素贝叶斯算法的python实现
朴素贝叶斯 算法优缺点 优点:在数据较少的情况下依然有效,可以处理多类别问题 缺点:对输入数据的准备方式敏感 适用数据类型:标称型数据 算法思想: 朴素贝叶斯比如我们想判断一个邮件是不是垃圾邮件,那么 ...
- 解决SVN Upgrade working copy问题
解决SVN Upgrade working copy,无法上传到svn上的解决方案是SVN Upgrade working copy老有问题,而且还特别慢.还有种方法,将原来上传到svn的项目中有个. ...
- [工作中的设计模式]责任链模式chain
一.模式解析 责任链模式是一种对象的行为模式.在责任链模式里,很多对象由每一个对象对其下家的引用而连接起来形成一条链.请求在这个链上传递,直到链上的某一个对象决定处理此请求.发出这个请求的客户端并不知 ...
- SpringBoot配置属性之DataSource
https://segmentfault.com/a/1190000004316491
- JavaScript函数表达式
函数表达式的基本语法形式 var functionName = function(arguments){ //函数体 } 递归建议 我们通过例子来一步步说明,递归的最佳实现方式.下面是普通递归调用的例 ...
- js 封装设计cookie
http://www.imooc.com/article/12700<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional/ ...
- SQL获取当前时间(日期)
--获取当前日期(如:yyyymmdd) select CONVERT (nvarchar(12),GETDATE(),112) --获取当前日期(如:yyyymmdd hh:MM:ss) selec ...