关于EF Core2.0需要注意的几项

EF Core 2.0是开源的,轻量级的,可扩展的,跨平台的OR Mapping框架

预装:Microsoft.EntityFrameworkCore.SqlServer,EF Core Tools for PMC

可选:EF Core Tools for dotnet CLI

1.延迟加载是不被支持的

2.可以在Linq查询中使用自定义函数,EF6是不可以的

3.EF Core可以支持theninclude,EF6是不可以的

4.Include()方法中可以支持lambda表达式参数,而EF6是不支持的

5.Include()方法是不能够使用在DbSet.Find()之后的,也就是说类似context.Students.Find(1).Include()在2.0是不被支持的

6.ThenInclude()必须在Include()方法调用之后接着调用才可以正确调用,否则是不被支持的

7.EF Core支持一对一的实体关系约定,而且是通过唯一性unique约束施加在依赖的实体上来实现的,EF6是不支持唯一性约束,所  以EF6及以下版本无法支持一对一的实体关系约定,若非要实现这样的关系可以通过刘畅的fluent API来实现

8.Fluen API流畅的API相对于数据注解Data Annotataion方式,对类实体的配置优先级更高一些

9.FromSQL只能返回同一类型数据,而且必须返回表中所有列,不能够在sql中使用join 

10.调用存储过程不能够执行cud操作

11.remove-migration仅仅回退到前一个版本的migration迁移,前提是上一个迁移还未应用与数据库,也就是还未执行update-database

12.对已经update-database的迁移要进行恢复需要利用update-database 指定版本的迁移

13.Script-migration默认生成的脚本包括所有迁移的脚本,要指定需要的脚本需要加上-from -to进行指定

14.执行迁移操作可以采用PMC和CLI两种方式

15.基于以上几点,未来的EF CORE3.0会更加便利,许多feature会实现完善

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值