介绍
EntityFrameworkCore
EF core 是一个轻量级的,可扩展的EF的跨平台版本。对于EF而言 EF core 包含许多提升和新特性,同时 EF core 是一个全新的代码库,并不如 EF6 那么成熟和稳定。
EF core 保持了和EF相似的开发体验,大多数*API都被保留了下来,所以,如果你用过EF6,那么上手EF core你会觉得非常轻松和熟悉,EF core 构建在一套全新的核心组件上,这意味着EF core没有从EF上继承所有特性。一些特性会在未来的版本中发布(例如 延迟加载和弹性链接),其它一些不常用的特性不会在EF core中实现。
全新的,可扩展的,轻量级的EF core,允许我们添加一些在EF6中未实现的特性(例如 alternate keys,和在Linq中混合计算混合的数据库)
安装并配置
使用NuGet包管理工具下载ef Core
发一下文字 Microsoft.EntityFrameworkCore.SqlServer 方便小伙伴复制,
安装这个的时候,会自动安装所需依赖,装完就可以尽情的使用EFCore了。
1.新建一个Model作为测试数据
2.新建Uitl文件夹存放EF相关的类,
新建Context
3.给Context进行注入
ASP.NET Core默认实现了DI,服务在启动时进行注册,通过构造函数的方式获取。
打开Startup.cs, 注册context
4修改配套的 DefaultConnection
打开appsettings.json文件
5.添加测试数据,生成数据库结构
6.Startup中修改Configure方法,调用刚刚的方法
运行一下网站,可以看到数据库和测试数据都已生成
注意: DbInitializer.cs 是为了程序运行,就进行生成数据库,和表结构等, 手动建数据的可不用这样操作。
使用EF Core
NET Core中默认自带了依赖注入,所以我们在控制器中使用ef的时候 直接进行构造函数注入
依赖注入的有点大家都应该有所了解, 不需要去New一个Context,原来:
privite XxxContext db=new XxxContext();
现在:
打上断点,我们就可以拿到user数据了。