EFCore2.1中DbFirst和CodeFirst简单使用
EFCore中没有DbFirst了吧,应该都是Code First
先说说第一种,Code First From Database(DbFirst)数据库先行,这种方式就要命令行了...(特不喜欢命令行。。):
1.建好项目后通过 NuGet 安装所需依赖性:
()Microsoft.EntityFrameworkCore
()Microsoft.EntityFrameworkCore.Design
()Microsoft.EntityFrameworkCore.SqlServer
()Microsoft.EntityFrameworkCore.SqlServer.Design
()Microsoft.EntityFrameworkCore.Tools
可以右键项目通过管理NuGet程序包的方式安装,也可以通过命令安装(找到VS工具栏 ---> NuGet 包管理器 ---> 程序包管理控制台):
注意选择默认项目
Install-package Microsoft.EntityFrameworkCore
Install-package Microsoft.EntityFrameworkCore.Tools
Install-package Microsoft.EntityFrameworkCore.Design
Install-package Microsoft.EntityFrameworkCore.SqlServer
Install-package Microsoft.EntityFrameworkCore.SqlServer.Design
然后复制,粘贴,看到已用时间:xxxxxxx即可,
然后继续在程序包管理控制台再输入:
Scaffold-DbContext -Connection "Server=.;Database=EFCoreDemo;uid=sa;pwd=123" Microsoft.EntityFrameworkCore.SqlServer -OutputDir "Models"
-OutputDir "Models" 可不写,EFCore中只能通过命令生成了,不能像以前EF6一样可以鼠标操作生成了,如果加上了则会在项目中添加models文件夹,生成的context和实体类都放到models文件夹中,如不加,实体则直接生成到项目中

最后在控制台测试一下
再试试第二种熟悉的Code First(代码先行,跟以前EF几乎是一模一样),还是比较熟悉这个
前面步骤都是一样的,建好项目,安装依赖包,不过code first好像需要安装两个依赖包就可以了
Microsoft.EntityFrameworkCore.SqlServer
Microsoft.EntityFrameworkCore
编写Studnet和Classinfo实体类


然后在编写context上下文类,需要继承DbContext
public class CodeFirstContext : DbContext
{
public CodeFirstContext()
{ }
public CodeFirstContext(DbContextOptions options) : base(options)
{ }
public DbSet<Student> Student { get; set; }
public DbSet<ClassInfo> ClassInfo { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
if (!optionsBuilder.IsConfigured)
{
optionsBuilder.UseSqlServer("Server=.;Database=EFCoreCodeFirst;uid=sa;pwd=123");
}
}
protected override void OnModelCreating(ModelBuilder modelBuilder)
{ }
}

基本上跟Ef6差不多的,写好之后测试一下就OK了:
using (CodeFirstContext db = new CodeFirstContext())
{
db.Database.EnsureCreated(); //数据库不存在则创建,存在则不管
db.Add(new ClassInfo { ClassName = "软件二班" });
var result = db.SaveChangesAsync().Result;
Console.WriteLine(result > ? "成功了" : "失败了"); }
EFCore2.1中DbFirst和CodeFirst简单使用的更多相关文章
- EF CodeFirst系列(1)---CodeFirst简单入门
1.什么是CodeFirst 从EF4.1开始,EF可以支持CodeFirst开发模式,这种开发模式特别适用于领域驱动设计(Domain Driven Design,大名鼎鼎的DDD).在CodeFi ...
- CodeFirst简单演示的步骤
CodeFirst简单演示的步骤 创建实体类[Student] public class Student { public long Id { get; set; } public string Na ...
- Deferred在jQuery和Angular中的使用与简单实现
Deferred在jQuery和Angular中的使用与简单实现 Deferred是在jQuery1.5版本中加入的,并且jQuery使用它完全重写了AJax,以前也只是偶尔使用.但是上次在使用Ang ...
- java中Color类的简单总结
java中Color类的简单总结 1.颜色的常识 任何颜色都是由三原色组成(RGB),JAVA中支持224为彩色,即红绿蓝分量取值 介于0-255之间(8位表示) 2.Color类中的常量 publi ...
- Linux 中 Vi 编辑器的简单操作
Linux 中 Vi 编辑器的简单操作 Vi 编辑器一共有3种模式:命名模式(默认),尾行模式,编辑模式.3种模式彼此需要切换. 一.进入 Vi 编辑器的的命令 vi filename //打开或新 ...
- ASP.net中导出Excel的简单方法介绍
下面介绍一种ASP.net中导出Excel的简单方法 先上代码:前台代码如下(这是自己项目里面写的一点代码先贴出来吧) <div id="export" runat=&quo ...
- spring注解开发中常用注解以及简单配置
一.spring注解开发中常用注解以及简单配置 1.为什么要用注解开发:spring的核心是Ioc容器和Aop,对于传统的Ioc编程来说我们需要在spring的配置文件中邪大量的bean来向sprin ...
- 浏览器中 F12 功能的简单介绍
chrome浏览器中 F12 功能的简单介绍 由于F12是前端开发人员的利器,所以我自己也在不断摸索中,查看一些博客和资料后,自己总结了一下来帮助自己理解和记忆,也希望能帮到有需要的小伙伴,嘿嘿! 首 ...
- Oracle中对XMLType的简单操作(extract、extractvalue...)
Oracle中对XMLType的简单操作(extract.extractvalue...) 1.下面先创建一个名未test.xml的配置文件. <?xml version="1. ...
随机推荐
- PDF下载网
http://www.java1234.com/a/javabook/javaweb/2018/1103/12297.html
- Vue 全家桶介绍
Vue有著名的全家桶系列,包含了vue-router(http://router.vuejs.org),vuex(http://vuex.vuejs.org), vue-resource(https: ...
- requestAnimationFrame 完美兼容封装
完美兼容封装: (function() { var lastTime = 0; var vendors = ['webkit', 'moz']; for(var x = 0; x < vendo ...
- IOS初级:story board的跳转
本文要实现view1跳到view2,view2又跳回view1. 首先要在视图中拉出一条连接view1和view2的线. 下面是在view1的控制器中实现,从view1跳到view2 //发生跳转前会 ...
- 在Eclipse中运行JAVA代码远程操作HBase的示例
在Eclipse中运行JAVA代码远程操作HBase的示例 分类: 大数据 2014-03-04 13:47 3762人阅读 评论(2) 收藏 举报 下面是一个在Windows的Eclipse中通过J ...
- Alpha 冲刺 (1/10)
队名 火箭少男100 组长博客 林燊大哥 作业博客 Alpha 冲鸭! 成员冲刺阶段情况 林燊(组长) 过去两天完成了哪些任务 协调各成员之间的工作,对多个目标检测及文字识别模型进行评估.实验,选取较 ...
- 矩阵快速幂小结-Hdu2604
矩阵快速幂可以想象为线性代数的矩阵相乘,主要是运用于高效的计算矩阵高次方. 将矩阵两两分组,若要求a^n,即知道a^(n/2)次方即可,矩阵快速幂便是运用的这个思路. 比方想求(A)^7那么(A)^6 ...
- pycharm显示Unresolved reference
状态:已解决 原因:不知道怎么表达 解决方法:重装django,,,,,,,,,,,,,,,,,,,
- tomcat项目中配置数据库连接池
1. 在项目中新建context.xml文件,不要在tomcat服务器的目录中修改context.xml(会对整个服务器生效).. 在web项目的META-INF中存放context.xml 2. ...
- 前端之css操作2
一 伪类选择器 伪类选择器就是在查找的后面加上冒号和状态 hover:悬浮到上面就会变化一种状态 link:没有接触的状态 active:点击是触发的状态 visited:点击后的状态 <!DO ...