Entity Framework Code-First CTP5发布了

近日,ADO.NET团队发布了Entity Framework Code-First Library CTP5。该程序库旨在为开发者提供一个以代码为中心的工作流用于处理数据。这也是微软在今年第一季度发布最终版前的最后一个CTP版。

凭借Entity Framework Code-First CTP5,开发者可以:

  • 无需设计器就可以开发
  • 无需基类就可以通过编写类来定义模型对象
  • 无需显式配置任何内容就可以实现数据库的持久化

CTP5中已知的问题

  • 需要对Fluent API中表与列的映射进行改进
  • 需要对CTP5早期预览版中可插拔的约定进行更多的测试
  • 只有使用Code First时才支持验证特性

从CTP4开始新增的内容

DbContext

  • 用于DbContext/DbSet的T4模板
  • 保存对象时的验证
  • 修改了Tracker API
  • DbSet.Loca公开了一个ObservableCollection,用于表示DbSet的本地内容
  • 通过iQueryable 的AsNoTracking扩展方法支持No-Tracking Queries
  • DbContext配置
  • 原生的SQL查询/命令
  • 改进的并发冲突解决方式

Code First

  • 完全的数据注解支持
  • 改进的Fluent API
    • 简化的表与列的映射
    • 可以忽略掉类与属性
  • 可插拔的约定——还需要进一步完善

从CTP4以来所发生的变化

  • 新的程序集名称——EntityFramework.dll
  • 为现有的数据库支持提供更好的Code-First
  • DbContext.ObjectContext被移走了——通过((IObjectContextAdapter)myContext).ObjectContext获取上下文
  • 排除掉EdmMetadata表
  • 一些类的变更
    • System.Data.Entity.Database.DbDatabase
    • System.Data.Entity.Database.DropCreateDatabaselfModelChanges
    • System.Data.Entity.Database.DropCreateDatabaseAlways
    • System.Data.Entity.Database.CreateDatabaselfNotExists
    • System.Data.Entity.Database.SqlConnectionFactory
    • System.Data.Entity.Database.SqlCeConnectionFactory

喜欢在Visual Studio中通过NuGet来安装程序库的开发者们也可以在SQL Azure中这么做。从发布伊始,Morteza Manavi就发布了一系列文章介绍如何使用CTP5实现继承映射和实体关联。

查看英文原文:Entity Framework Code-First CTP5

你可能感兴趣的:(Entity Framework Code-First CTP5发布了)