无法加载文件或程序集’EntityFramework,Version = 6.0.0.0,

我正在和EF合作。 我正在尝试执行此行

public ActionResult Edit(string id) { return View(obj.FindSemesterById(id)); } 

我在我的项目上安装了EF Version 5。

但我得到这个错误:

无法加载文件或程序集’EntityFramework,Version = 6.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089’或其依赖项之一。 定位的程序集的清单定义与程序集引用不匹配。 (HRESULTexception:0x80131040)

我的web.config文件:

      

从评论部分看来,您无法从公共NuGet源安装最新版本的EF,因为您的计算机无法直接访问互联网,也无法解析www.nuget.org域。 通常,如果在Internet设置中配置代理,Visual Studio将在从公共存储库安装NuGet时使用此代理。

因此,一旦在项目中安装了最新的EF 6.1.0软件包,错误就会消失。 目前,您似乎正在使用该软件包的某些旧版本,并且您的解决方案中的项目需要v6。

首先检查您使用的EF版本。

您可以从NuGet Manage Pack更新EF版本。

转到您的项目解决方案 – >’管理解决方案的NuGet数据包’,单击’entity framework’上的’管理’。

并检查您的app.config 。 也许这里引用了错误的版本号。

编辑:

 

它引用了EF版本5.0.0.0

打开

 Toos > Nuget Package Manager > Package Manager Console 

然后运行

 PM> install-package entityframework -version 6.0.0.0 

或者您可以使用以下命令将其更新到最新版本

 PM> Update-Package entityframework 

我今天遇到了同样的问题。 我在一个解决方案中有3个项目,其中两个有EF 6.0.0.0 ,其中一个有5.0.0.0 。 当我发现这个问题时,我升级了那个项目的版本。 错误消失了。

注意:我只是去了每个项目的References文件夹,看到了EntityFramework的属性,找出了Entity的版本。

使用Nuget卸载EF然后再添加它,清理并重建您的项目,就像一个魅力。 在我的情况下,“卸载”部分很关键,我做了很多重新安装和更新,没有。

我遇到了类似的问题和你提到的相同的错误。

我解决了不同的问题。 我注意到EntityFramework.dll已添加到解决方案资源管理器下的packages文件夹中。 所以我将EntityFramework.dll从该文件夹复制到解决方案资源管理器下的bin文件夹,它工作正常。 我知道这不是你的答案,它可能对其他人有帮助,所以我只是添加了它。

我遇到了同样的问题,在这里查看答案给了我一个提示。 我的解决方案中有四个项目。 这是一个与我最初通过解决方案创建的计算机不同的计算机,因此我打开了Tools,然后是NuGet包管理器,单击“管理解决方案的NuGet包,找到entity framework并单击它一次。然后单击出现的管理按钮。

NuGet提议将EF安装到解决方案中的一个项目中,所以我这样做了。 那是我开始收到这个错误的时候。

回到NuGet并选中框以将EF安装到解决方案中的所有四个项目中解决了问题。

快乐了!