我的项目中安装了哪个版本的Entity Framework?

问题描述 投票:1回答:2

我刚刚使用Nuget在我的项目中安装Entity Framework 4.3.1。当我查看引用时,他们说System.Data.Entity是版本4.0.0。运行时版本是v4.0.30319

  1. 这对EF版本4.3.1是否正确?我以为它会说4.3.1 ..? 此外,当我检查引用的dll的目录(在C:\Program Files..\.NETFramework\v4.0\System.Data.Entity.dll中)时,文件的日期是18/03/2010。 根据WikiPedia: 版本4.3.1于2012年2月29日发布
  2. 这不应该意味着文件的日期应该接近2012年吗? 当我使用Nuget Get-Package时,它说安装的版本是4.3.1,但我不想使用Nuget在其他项目上安装EF 4.3.1。
  3. 实体框架4.3.1 dll在哪里,所以我可以在其他项目中添加对它的引用?

谢谢。

c# .net entity-framework entity-framework-4 entity-framework-4.3
2个回答
6
投票

在项目中安装Entity Framework时,如下所示:

Install-Package EntityFramework -Version 4.3.1

你最终将得到一个EntityFramework.dll文件,如果你打开它的属性将具有在安装命令中指定的确切版本:

enter image description here

并且,如果您双击项目中的引用,您将看到相同的:

enter image description here

不要与System.Data.dll混淆,data layer是.NET Framework的DataRow,您可以在其中找到许多类来处理数据,例如DataTablewas included in .NET Framework 3.5 SP1 ADO.NET的一部分......


来自评论:

安装4.3.1后,如何迁移我的项目以使用新版本?

第一个版本和4.x之间存在很大差异,您将有一些工作更改代码,但这是您需要做的:

EF Entity Framework的第1版,被称为“ADO.NET实体框架”(现在它只是dll)所以没有分开的System.Data文件。

  1. 从nuget安装EF 4.3.1
  2. 更改项目中与数据一起使用的所有引用,以使用EntityFramework来使用qazxswpoi
  3. 看看发生了什么,并改变编译时遇到问题的每一行

在你的情况下,我会做的更通用:

  1. 我会创建一个新的Library项目,我将安装EF
  2. 然后我将使用EF创建一个存储库,其中包含db模式的当前备份
  3. 我还会创建一个测试项目并在项目周围进行一些测试,比如调用添加和更新内容
  4. 一切都很好后,我会替换所有原始数据调用以使用新的存储库(使用EF 4)并测试整个项目......

2
投票

从您的项目中扩展Reference部分并检查属性应该显示实体框架的版本。

© www.soinside.com 2019 - 2024. All rights reserved.