[整理]EF6.X更新了什么(版本历史中文版)

  下定决心以后用EF6.x版本了。想看看有什么更新特性,结果去人家github老巢一看,EF7 for vnext,顿时蛋疼了起来。想想国内这种技术氛围,有多少还在用ASP的,有多少还在用ADO.NET的(我指传统那种直接sql弄得不亦乐乎的),有多少个aspx结尾的网站还在开发的路上,就不想再多说什么了。

  EF6是和VS2013一起发布的,所以要体验EF6的完整特性请做个自带VS2013光环的程序员。

  本文基于http://msdn.microsoft.com/en-us/data/jj574253 搬运,然后参考了一些链接。栗子见原文。本文纯粹概要翻译。

  EF6以下的见http://msdn.microsoft.com/zh-cn/data/jj574253

Release  摘要  备注
EF 6.1
1工具整合。 EF Power Tools提供了一个一致的方式去创建一个新的EF模型

2事务提交失败处理.CommitFailureHandler利用了一个拦截事务操作的新特性,能够自动从失败的连接中恢复并提交事务
3IndexAttribute.在Code First model里的属性上标注 [Index],Code First 就会在数据库里对相应字段创建索引。
4公共映射API.该API用来指示属性和类是如何对应数据库的字段列和数据表的,访问修饰符从以往的internal提升为public。
5在配置文件(APP/Web.config)里配置拦截器而无需重新编译程序。
By the way,System.Data.Entity.Infrastructure.Interception.DatabaseLogger是一个能够轻松记录数据库操作的一个新的拦截器。结合先前提到的特性,能够无需重编译而对一个部署好的程序接入数据操作记录功能。
6迁移模型的变化检测更为准确,性能也得到了提高。
7性能提升。体现在初始化期间减少数据库操作,linq查询null相等比较的优化,更快的视图生成(建模),更有效地跟踪多个关联实体
8NuGet上能够找到该版本运行时。
9微软下载中心中有VS2012,2013的工具用于 Model First or Database First。


1VS2013里添加实体模型会有多个选项

8 这算什么狗屁新特性...

EF 6.0.2  修正了一些bug。  
EF 6.0.1  修正了一些bug。  
EF 6
一、工具更新for VS
二、运行时

Entity Framework 6包含了以下运行时特性,它们同时适用于代码优先和EF设计器:

01异步查询和保存.基于.NET4.5的异步模式
02自动连接恢复(Connection Resiliency).
03基于代码的配置
04“依赖解决方案(Dependency Resolution)”.依赖项解析提供了服务定位模式支持,以及可以实现自定义替换。
05拦截/SQL日志.
06经过改进的可测试性。表现在mock或者自己写的测试的借助下,对DbContext和DbSet的测试更为简单
07使用已经打开的DbConnection创建DbContext
08改进的事务支持.
09在.NET 4.0中,有更好的性能,并且支持枚举和空间数据类型
10增强了LINQ查询中的Enumerable.Contains方法
11经过改进的视图生成
12“可插式复数化(Pluggable Pluralization)”和“单数化服务(Singularization Service)”
13实体类Equals或GetHashCode方法的自定义实现
14DbSet.AddRange/RemoveRange.添加/移除DbSet里的多个实体
15DbChangeTracker.HasChanges.查看对数据库任何挂起的更改。
16SqlCeFunctions.提供在 LINQ to Entities 查询中,调用数据库中函数的公共语言运行时 (CLR) 方法。

下面的运行时特性只适用于Code First:
01自定义代码优先约定
02支持将Code First映射到插入、更新、删除的存储过程
03幂等迁移脚本.支持生成从任意版本升级到最新版本的sql脚本。
04可配置的迁移历史表。
05每个数据库有多个上下文
06DbModelBuilder.HasDefaultSchema。一个新的Code First API,允许默认的数据库架构在一处进行配置
07DbModelBuilder.Configurations.AddFromAssembly方法。允许在以Code First Fluent API使用配置类的时候,在一个组件内定义配置类。
08自定义迁移操作
09默认事务隔离级别改为READ_COMMITTED_SNAPSHOT。用Code First建数据库的时候更灵活,死锁更少。
10Entity and complex types can now be nestedinside classes.(真心查不到nestedinside的意思)


16. using System.Data.Entity.SqlServer;

其他参考链接:

http://www.infoq.com/cn/news/2013/08/entity-framework-6-rc

http://www.infoq.com/cn/news/2013/06/EF6-Breaking-Changes

时间: 2024-09-28 16:18:38

[整理]EF6.X更新了什么(版本历史中文版)的相关文章

OpenGL的版本历史和发展

来源请注明,本文永久地址为http://www.cnblogs.com/vertexshader/articles/2917540.html OpenGL®作为业界最为广泛使用的2D和3D图形接口标准,应用在成千上万的各式各样的计算机的程序中.从初期的崭露头角,到与Direct3D激烈竞争,后经历黯淡被Khronos接手又发扬光大,已经历经波折发展了20年.由于过去的黯淡,至今甚至仍有人站在错误的时间角度认为它是落后的--它从未停止它前进的步伐,这篇文章就来简述OpenGL的版本历史和发展. O

Xcode各版本官方下载, Mac和IOS及Xcode版本历史

官方下载, 用开发者账户登录,建议用Safari浏览器下载. 官方下载地址: https://developer.apple.com/xcode/downloads/ Xcode 7 7.2 : https://developer.apple.com/services-account/download?path=/Developer_Tools/Xcode_7.2/Xcode_7.2.dmg 7.1.1: https://developer.apple.com/services-account/

Xcode各版本官方下载及百度云盘下载, Mac和IOS及Xcode版本历史

转自 http://blog.csdn.net/yasi_xi/article/details/46705893 官方下载, 用开发者账户登录,建议用Safari浏览器下载. 官方下载地址: https://developer.apple.com/xcode/downloads/ 百度云盘下载地址: http://yun.baidu.com/share/home?uk=1902433471#category/type=0 Xcode 7 beta 3:https://developer.appl

c# 各版本历史及各版本新特性列表

c# 各版本 新特性列表,更新到8.0(2019年 9月)(太多了,跟不上微软的节奏啊...) 版本历史: 原文地址:https://www.cnblogs.com/worksmart/p/11712078.html

cocos2d-x 学习资源整理(持续更新...)

生活像一把无情刻刀,改变了我们模样,曾经我以为会亘古不变的东西,突然在一瞬间失去了信念... 如果你改变不了生活中患得患失的心情,那就试着让自己变得强大一点,因为能做到不以物喜不以己悲都是建立在强大的基础上面的. so,加油吧,少年. ================================================================ 一不小心又废话了. 学习cocos2d-x也有一段时间了,直到现在仍然认为自己是个新手(呵呵,说的好像我不是新手一样.) 现在把自己这

Atitit. Atiposter 发帖机版本历史 编年史

Atitit. Atiposter 发帖机版本历史 编年史 V1  初步实现sina csdn cnblogs V2  实现qzone sohu 的发帖功能  顺便重构接口实现分离 V3多文件循环发帖(初步bbs版本) V4  sina发帖功能fix增加二次贴入内容 发布时的确认关闭提示folat框子 调整分类总的分类dsl 和ide俩优先类 V5默认分类选择ide dsl功能..这样一般就只要取消一个就可以了. 1. 未来版本规划 V6  界面ui 调整高度化 V7标准化api草案 v....

微信公众号吸粉简易新策略(自整理持续待更新)

(自整理持续待更新) 1)(贴吧/知道/论坛/社区问答法) 在百度贴吧回答问题并在最后或中间加入推荐的微信公众号(每天花点时间在某个固定的贴吧回复一些新人的提问贴,然后在最后附上一句“推荐关注个XX的微信公众号:XXX”.(推荐关注个XX相关的微信公众号:XXX)当然这个回答是需要有实际作用的.如果没有作用,就算你推荐了也不会有人来加的.如果能解决提问者的问题,提问者自然会觉得你说的每一句话都是可以接受的.)这种方法虽然关注的不一定多,但是会比较问题,只要能解决提问者的需要,让他加入一般不是问题

php 安全措施整理搜集+持续更新

#1:管理安装脚本 如果开发人员已经安装了一套第三方应用程序的PHP脚本,该脚本用于安装整个应用程序的工作组件,并提供一个接入点.大多数第三方软件包都建议在安装 后,删除该目录包含的安装脚本.但开发人员希望保留安装脚本,他们可以创建一个.htaccess文件来控制管理访问目录. AuthType Basic AuthName "Administrators Only" AuthUserFile /usr/local/apache/passwd/passwords Require val

[实时更新]jquery所有版本下载

jquery-2.1.0   注!不再支持IE 6/7/8 直接引用地址:  开发版地址1: <script src="http://code.jquery.com/jquery-2.1.0.js"></script> 压缩版地址1: <script src="http://code.jquery.com/jquery-2.1.0.min.js"></script> 开发版地址2: <script src=&qu