EF6.0 对于数据库优 模式 新加功能

EF6.0相对于5.0新加了很多功能。先看看两个模式的一些特点。

数据库优先(设计者)和代码优先两者的特点:

  • 连接弹性
  • 异步查询和保存
  • 基于代码的配置
  • 数据库命令记录
  • 数据库命令截取
  • 依赖决议
  • DbSet.AddRange / RemoveRange
  • 更好的交易支持
  • 可插拔的多元化和单一化服务
  • 可测试性改进
  • 用打开的连接创建上下文
  • 提高性能和预热时间

Code-First的特点:

  • 自定义约定
  • 插入,更新和删除实体CUD操作的存储过程
  • 索引属性(EF 6.1)
  • 每个数据库多上下文
  • 嵌套的实体类型
  • 自定义迁移操作
  • 可配置的迁移历史记录表

 

异步查询和保存:

有关异步知识:System.Threading.Tasks

异步简单列子:

 

 

 

 

 

 

数据库命令日志记录:

使用context.database.Log记录EF执行的所有活动。您可以附加任何类的任何方法,它接受一个字符串参数并返回void。

 Context.Database.Log是一个Action <string>所以你可以附加任何具有一个字符串参数和void返回类型的方法。

 

 

 

 

事务:

实体框架默认在执行SaveChanges()时将Insert,Update或Delete操作包装在事务中。EF为每个操作启动一个新的事务,并在操作完成时完成事务。当你执行另一个这样的操作时,一个新的事务被启动。

EF 6引入了database.BeginTransactionDatabase.UseTransaction来提供对事务的更多控制。

 

 

DbSet.AddRange&DbSet.RemoveRange:

  EF 6中的DbSet引入了新的AddRange和RemoveRange方法。DbSet.AddRange将实体的集合(IEnumerable)添加到DbContext,可以批量添加和删除了。

 

转载于:https://www.cnblogs.com/Sea1ee/p/7920728.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值