Entity Framework 6 RC 增加 SQL 日志和新智能感知文档,并改进可测试性

  • Anand Narayanaswamy
  • 马德奎

2013 年 8 月 28 日

话题:语言 & 开发

最近,微软发布了Entity Framework 6 候选发布版,它支持拦截SQL 日志,另外还针对可测试性进行了多项改进,使开发人员可以为 DbContext 和 DbSet 创建Test doubles

该版本还在自定义“代码优先(code first)”约定和基于代码的配置方面做了重大更改,包括支持以.NET Framework 4 为目标框架的项目。产品团队还对核心 API 做了一些改变和更新,并增加了智能感知文档。

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

  • 异步查询和保存
  • “连接恢复(Connection Resiliency)”
  • 基于代码的配置
  • “依赖解决方案(Dependency Resolution)”
  • 拦截 /SQL 日志
  • 经过改进的可测试性
  • 在.NET 4.0 中,有更好的性能,并且支持枚举和空间数据类型
  • 使用已经打开的 DbConnection 创建 DbContext
  • 默认事务隔离级别改为 READ_COMMITTED_SNAPSHOT
  • DbContext.Database.UseTransaction
  • DbContext.Database.BeginTransaction
  • 增强了 LINQ 查询中的 Enumerable.Contains 方法
  • 经过改进的视图生成
  • “可插式复数化(Pluggable Pluralization)”
  • “单数化服务(Singularization Service)”
  • 经过改进的事务支持
  • Equals 或 GetHashCode 方法的自定义实现
  • DbSet.AddRange
  • RemoveRange
  • DbChangeTracker.HasChanges
  • SqlCeFunctions

据 Rowan Miller 说,这个工具没有包含新特性,但大部分运行时新特性可以与在 EF 设计器中创建的模型一起使用。

下面的运行时特性只适用于代码优先:

Rowan 说,“EF6 最终版将随 Visual Studio 2013 一起发布。”

查看英文原文:Entity Framework 6 RC Adds SQL Logging, Testability Improvements and New IntelliSense Documenation

语言 & 开发