实体框架 4.1 获得了 DbContext 的 API——不过还没有数据库演进、存储过程或缓存查询的支持

  • Roopesh Shenoy
  • 朱永光

2011 年 3 月 27 日

话题:.NETDevOps语言 & 开发架构

ADO.NET Entity Framework 4.1 将要来到我们面前了——计划在四月末发布,其带来一系列新特性,如:

  • 唯一约束
  • 更好的验证
  • 支持表值函数(Table Valued Functions
  • 通过引入 DbContext API,生产率整体有所提高

EF 是一个用于.NET 应用程序的对象关系映射框架。它在关系数据库之上提供了强类型的 LINQ 数据访问体验,包括对 SQL Server 直接高效的访问。在最初发布的时候,由于缺少在其他由.NET 开源社区所提供的 ORM 函数库中都存在的很多特性,它备受批评。从此之后,很多特性被逐步加入。然而在 4.1 CTP 期间一个被普遍要求的特性——代码优先数据库演进(Code First Database Evolution )——却没有如期在 4.1 版本中出现。下面是官方博客所做的解释:

我们收集到的一个最常见的需求是,随着时间推移能够根据 Code First(代码优先)模型来演进数据库结构。不过,我们在开发这个功能的同时,也听到一些强烈的反馈,有些人急需 Code First 特性出现在 RTW 中。有鉴于此,我们团队就把注意力集中到把当前特性完善到适合生产环境使用。因此,数据库结构演进的功能将不会出现在我们第一次的 RTW 发布中。这个功能,一旦我们准备妥当,你就可以了解到更详细的说明。

在这次发布中其他一些特性也没有达到预定目标,如对存储过程、类型转换、枚举和大数据块更新的支持。

爱好者已经可以从这里获得发布候选版。

实体框架新版本独立于.NET 框架发布,这还是第一次。这是一种新趋势的开始——今后,.NET 社区将不用再等待完整的.NET 框架发布,就可以用上 EF 中的一些新特性,并且未来会有很多这种中间发布出现。

访问 ADO.NET 团队的官方博客文章来了解更多信息。

查看英文原文:Entity Framework 4.1 gets DbContext API – but no Database Evolution, SPs or Cached queries

.NETDevOps语言 & 开发架构