MVC 4项目中缺少'DotNetOpenAuth.Core,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = 2780ccd10d57b246'

时间:2014-06-29 00:06:44

标签: .net asp.net-mvc-4 .net-assembly filenotfoundexception

我已经下载了项目,这是微软网站上提供的Pluralsight MVC 4免费教程视频的效果:http://www.asp.net/mvc/videos/pluralsight-building-applications-with-aspnet-mvc-4

项目链接:http://www.speedyshare.com/GGTrM/odetofoodmvc4-7c20f071ef3b.zip

我已经创建了MVC音乐商店应用程序,它运行正常。 这个项目显然是正确的,从Visual Studio 2013运行后,我给出了这样的信息:

System.IO.FileNotFoundException: Cannot load file 'DotNetOpenAuth.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=2780ccd10d57b246' 

堆栈:

[FileNotFoundException: Nie można załadować pliku lub zestawu 'DotNetOpenAuth.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=2780ccd10d57b246' lub jednej z jego zależności. Nie można odnaleźć określonego pliku.]
   Microsoft.Web.WebPages.OAuth.PreApplicationStartCode.Start() +0

[InvalidOperationException: Metoda Start w typie Microsoft.Web.WebPages.OAuth.PreApplicationStartCode, wywoływana na etapie inicjalizacji przed uruchomieniem aplikacji, zgłosiła wyjątek; komunikat o błędzie: Nie można załadować pliku lub zestawu 'DotNetOpenAuth.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=2780ccd10d57b246' lub jednej z jego zależności. Nie można odnaleźć określonego pliku..]
   System.Web.Compilation.BuildManager.InvokePreStartInitMethodsCore(ICollection`1 methods, Func`1 setHostingEnvironmentCultures) +556
   System.Web.Compilation.BuildManager.InvokePreStartInitMethods(ICollection`1 methods) +132
   System.Web.Compilation.BuildManager.CallPreStartInitMethods(String preStartInitListPath, Boolean& isRefAssemblyLoaded) +102
   System.Web.Compilation.BuildManager.ExecutePreAppStart() +153
   System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, Exception appDomainCreationException) +516

[HttpException (0x80004005): Metoda Start w typie Microsoft.Web.WebPages.OAuth.PreApplicationStartCode, wywoływana na etapie inicjalizacji przed uruchomieniem aplikacji, zgłosiła wyjątek; komunikat o błędzie: Nie można załadować pliku lub zestawu 'DotNetOpenAuth.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=2780ccd10d57b246' lub jednej z jego zależności. Nie można odnaleźć określonego pliku..]
   System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +9885060
   System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +101
   System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +254

问题:我的系统是否缺少运行此应用程序的工具?如果是,请如何在此版本中安装DotNetOpeanAuthCore。

3 个答案:

答案 0 :(得分:4)

在这种特定情况下,只需转到工具 - NuGet包管理器 - 管理解决方案包,然后查看窗口的 AT ,将会出现一个按钮“此处缺少某些NuGet包解决方案。点击从您的在线包源恢复“ 它实际上位于对话框的顶部。单击“还原”按钮,您即可恢复营业。重建您的解决方案,并且/ References下的错误列出的项目现在应该显示正常。

如果在其他情况下发生这种情况,请检查您的packages.config文件以查看列出的版本。如果它列出,那么通过gui恢复相同的版本,或者你可以使用cmd线(我总是使用cmd线作为nuget)

您可以随时访问工具 - > NuGet包管理器 - >包管理器控制台 并在控制台窗口中输入

Install-Package DotNetOpenAuth.Core -Version 4.3.4.13329

(替换为您需要的任何版本 - 这是撰写本文时的最新版本,但您的项目可能会使用较早的版本) 再次,这适用于其他场景 - 这里只是额外的信息。对于这个项目,你可以像我刚才提到的那样恢复包。

答案 1 :(得分:3)

我得到了同样的错误。 然后我删除了bin和obj文件夹并重新安装在Nuget控制台中:

PS控制台

Install-Package Microsoft.Net.Http
Install-Package Microsoft.AspNet.WebPages.OAuth
VS 2013 Web Express,MVC 4,项目.NET 4.5.1

答案 2 :(得分:1)

您必须安装以下Nuget

  1. DotNetOpenAuth.Core
  2. DotNetOpenAuth.OAuth.Core
  3. DotNetOpenAuth.AspNet
  4. DotNetOpenAuth.OAuth.Consumer
  5. DotNetOpenAuth.OpenId
  6. 要安装Nuget包,请右键单击solution explorer中的项目名称 - > Manage NuGet Package

    enter image description here