12

我的问题说明了一切,但这里有一些背景:

由于各种限制,我至少在 2014 年 7 月之前一直使用 .NET 4.0。但是,我的任务是将我们的 DAL 转换为使用实体框架来帮助提高可伸缩性和性能。目前,我们将所有数据从单个 xml 文件加载到内存中,因此我正在考虑将 Code First 与我们现有的实体一起使用。我们有一个非常庞大且复杂的模型,其中包含许多继承和枚举,我真的很希望在新版本中提供枚举支持和性能改进。

那么,我现在是否开始使用 EF6 并希望它在我们的发布日期之前是官方的,从 EF4 开始然后迁移?还是等到我们的下一个产品发布后再开始使用 EF?任何建议表示赞赏。

4

1 回答 1

6

如果您想使用 CodeFirst,您可以从 .NET Framework 4 的 EF5 开始,然后移至 EF6。您将错过此版本中不可用的许多功能(EF5 依赖于 System.Data.Entity.dll,它是 .NET Framework 版本的一部分,因此 .NET Framework 4 的 EF5 无法使用枚举等功能,空间类型等,因为它们在 .NET Framework 4 附带的 System.Data.Entity dll 中不受支持)。或者,您可以尝试 EF6。目前最新版本是alpha3。另一方面,它是一个开源版本,所以如果某些东西不工作或者你需要一些东西,你可以继续自己做。请注意,EF6 中的提供程序模型发生了变化,因此如果您不使用 Sql Server 或 Sql Server CE,则需要确保您的数据库有一个支持 EF6 的提供程序。

编辑

这是我们团队的一位成员关于发布日期的有趣博客文章:EF6 发布日期……或缺少发布日期

于 2013-03-27T20:21:14.843 回答