我想将我的应用程序升级到EF 5,以利用对枚举空间等的支持等功能。但是,除非我转到.Net 4.5,否则我无法升级。
我想知道.Net 4.5在.Net 4.0中使用哪些功能无法在.Net 4.0中使用?
答案 0 :(得分:15)
我的理解是EF> = 4.1(包括EF 5)由
组成System.Data.Entity.dll
),它们是.NET Framework的一部分DbContext
API和Code-First开发 2011年夏天有计划和尝试(Entity Framework June 2011 CTP)发布enum
,空间支持和其他新功能(代码优先迁移除外)作为核心图书馆的更新.NET 4.5发布。但是EF团队已经决定对NuGet包进行这样的带外更新(这就是为什么EF 4.3已经具有不需要触及核心库的迁移功能),但对于核心库它们也是如此在.NET 4.5发布之前很难做到并且无法完成:
实体框架有两个逻辑部分,即核心 .NET Framework和Visual Studio中的组件 “带外”组件,我们可以更新更新 经常安排。我们目前正在研究如何更新 更频繁的节奏的核心组件。 '2011年6月EF CTP'是我们第一次尝试更多地运送核心组件 我们经常在技术上做好准备 做到这一点。
核心组件包括:
- 核心EF运行时(System.Data.Entity.dll& System.Web.Entity.dll)
- EF Designer
带外组件包括:(我们可能会带出更多带外费用 未来的组件)
- DbContext API&代码优先(EntityFramework.dll)
- T4模板使用DbContext API和Model First&数据库优先
- EF电动工具
- Code First Migrations
(引自here。)
这意味着enum
对EF的支持将成为.NET 4.5核心库的一部分,而不是可下载的EF 5 NuGet包的一部分。因此,新的EF功能如enum
和空间支持不能与.NET 4.0一起使用。
有关将“EF核心库”与“EF NuGet包”分离的历史和原因的更多信息,请访问:http://blogs.msdn.com/b/adonet/archive/2011/10/18/how-we-talk-about-ef-and-its-future-versions.aspx