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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我的项目中安装了哪个版本的Entity Framework?相关的知识,希望对你有一定的参考价值。

我刚刚使用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...NETFrameworkv4.0System.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在哪里,所以我可以在其他项目中添加对它的引用?

谢谢。

答案

在项目中安装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)并测试整个项目......
另一答案

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

以上是关于我的项目中安装了哪个版本的Entity Framework?的主要内容,如果未能解决你的问题,请参考以下文章

安装了我的 composer.json 文件中列出的软件包的哪个版本?

我在 Angular 8 中安装了引导程序但无法正常工作。为啥?

确定哪个版本的 OpenCV

尽管我的系统中安装了相同的版本,但出现“org.scala-sbt#sbt;0.13.8: not found”错误。如何解决这个问题?

使用 gcc c++ 获取 Windows 版本

糟糕的 Python 包组织在我的路径中安装了一个“测试”包? (蟒蛇)