关于堆栈有一个类似的帖子,但它可能对我的问题没有帮助,因为我使用的是Visual Studio 2015。

如何在VS2015中显示“启用NuGet包恢复”选项?

我选择文件>新项目,并创建一个空ASP。NET Web应用程序。我在找这个菜单项。

我应该提到,我已经在我的项目文件夹中寻找任何预先存在的nuGet文件,没有。


当前回答

我也面临着同样的问题。我试图将在Visual Studio 2015上创建的MVC项目添加到我在Visual Studio 2019上做的解决方案中。

在Visual Studio 2019上已经有了现有的项目,所以添加这个我在VS 2015上创建的现有项目会触发同样的错误。我已经尝试了所有的答案,但都不能解决问题。

我所做的就是把。nuget文件夹放在解决方案文件夹上。原来文件夹的层次结构是这样的:

Solution Folder (VS 2019)
  -> MVC 1 Project
  -> MVC 2 Project
  -> MVC 3 Project (Project that I am adding)
         -> .nuget folder (It contains a .nuget folder)

所以当我移动解决方案文件夹本身的.nuget文件夹时,问题就解决了:

    Solution Folder (VS 2019)
  -> MVC 1 Project
  -> MVC 2 Project
  -> MVC 3 Project (Project that I am adding)
  -> .nuget folder (It contains a .nuget folder)

其他回答

正如Mike已经提到的,在VS2015中没有“启用NuGet包还原”选项。您必须手动调用恢复过程。一个很好的方法-不会弄乱文件和目录-是使用NuGet包管理控制台:点击进入“快速开始”字段(通常在右上角),进入控制台,打开管理控制台,并输入命令:

Update-Package –reinstall

这将重新安装解决方案中所有项目的所有包。要指定单个项目,输入:

Update-Package –reinstall -ProjectName MyProject

当然,这只是在恢复按钮(有时由VS2015提供)不可用时才有必要。这里列出并解释了更多有用的更新命令:https://learn.microsoft.com/en-us/nuget/consume-packages/reinstalling-and-updating-packages

使用此命令恢复所有包

dotnet restore

去visual studio的参考,看看哪些包丢失了。 现在在可视化中右键单击解决方案,然后在文件资源管理器中单击打开的文件夹。 现在打开包文件夹,删除丢失的包文件夹。 打开visual studio并构建解决方案。所有丢失的包都将被恢复。 如果我帮忙了,请把这个标记为答案。

包管理器控制台(Visual Studio, Tools > NuGet包管理器>包管理器控制台):运行Update-Package -重装-ProjectName命令,其中是在解决方案资源管理器中显示的受影响项目的名称。使用Update-Package -重装自行恢复解决方案中的所有包。看到更新包。如果需要,还可以重新安装单个包。

从https://learn.microsoft.com/en-us/nuget/quickstart/restore

更简单的是,在解决方案中添加一个. Nuget文件夹,然后就会出现“还原Nuget包”(不确定是否需要Nuget .exe才能正常工作)。