c# - Nuget包...项目中不存在...包...已存在于文件夹中

标签 c# asp.net asp.net-web-api nuget nuget-package

几个小时以来,我一直在与这个错误作斗争,但无法想出有效的解决方案。

我在一个多项目解决方案中有一个 ASP.Net API,它的引用/依赖项配置不正确,我已经尝试修复它两天了。

问题是(我相信)API 缺少 System.Web.Http/System.Web.Http.WebHost,这显然包含在 Microsoft.AspNet.WebApi.Core 中(每个多个其他 Stack Overflow 问题)。尝试通过 Nuget 安装它时,我在尝试解析依赖项时收到以下错误。此外,我每次都遇到此错误(请参阅本问题后面的故障排除):

Screenshot of Package Manager Console

我没有按特定顺序执行以下步骤(每个步骤以各种组合多次):

  • 运行“更新包 Microsoft.AspNet.WebApi.Core -reinstall”
  • 删除解决方案范围的“Packages”文件夹并删除项目的 packages.config 并尝试恢复包
  • 从物理驱动器和 TFS 中删除整个项目,并从头开始重新创建它(它使用不正确的引用创建)
  • 通过命令行和 Nuget GUI 安装包
  • 将解决方案检查到我硬盘上的不同位置,以尽可能重新开始
  • 重启我的电脑/重启 Visual Studio

在这一点上,我可以接受非干净的修复,只要它能修复它。 API 在某一点上工作,但后来我将它 checkin TFS,创建了一个分支,现在正在该分支上工作。可能没有包含某些依赖项(?),但即使是这种情况,我采取的步骤似乎应该可以解决问题。

最佳答案

关闭解决方案,然后转到硬盘驱动器上的 packages 文件夹并删除其中的所有内容。在 Visual Studio 中再次打开您的应用程序,它将自动尝试恢复包。清理解决方案并构建它。

关于c# - Nuget包...项目中不存在...包...已存在于文件夹中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36944427/

相关文章:

javascript - 两个日期组合在 mvc 的文本框中显示为短日期

c# - 我应该如何使用不允许异步 Controller 操作的 CMS 处理异步 API 调用?

asp.net - ASP.NET MVC 中一个页面中的不同标题,无需创建另一个母版页

ASP.NET:请求 cookie 的域为空?

asp.net-web-api - 我收到错误 401 : unauthorized when accessing my web API

javascript - 如何使用 Jquery 绑定(bind)菜单和子菜单应用 css?

c# - 单例和竞争条件

java - 我可以像 C# 构造函数一样创建 Java 构造函数吗?

c# - Magick.NET 减少 gif 文件大小

javascript - 在 Page_Load() 中添加 OnLoad()?