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

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

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

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


当前回答

对于.NET核心项目,在NuGet包管理器控制台中运行dotnet restore或dotnet build命令(会自动运行恢复)

您可以从运行控制台

> NuGet包管理器>包管理器控制台

其他回答

Ivan Branets的解决方案基本上为我解决了这个问题,但更多的细节可以分享。

在我的情况下,我在VS 2015使用自动包恢复和TFS。这些都是默认的东西。

问题是,当另一个开发人员试图从TFS获得解决方案时,一些包没有完全恢复。(为什么,我还不太确定。)但是packages文件夹包含了一个用于引用和NuGet包的文件夹,但是它没有被展开(比如一个包含.dll的lib文件夹丢失了)。这一半,但不是很正确的概念阻止了包装的恢复。

您可以认出这一点,因为该引用将有一个黄色感叹号,表示未被解析。

因此,删除包中的文件夹的解决方案消除了包恢复阻塞问题。然后,您可以在顶部解决方案级别上单击右键,以获得恢复包的选项,现在它应该可以工作了。

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

如果所有这些都失败了(或者在此之前),您可能需要检查并查看NuGet是否是包源代码。我安装了VS2017,默认情况下它不在那里。我觉得有点奇怪。

工具- NuGet包管理器-包管理器设置 点击对话框左侧导航的“包源”。 使用加号(+)添加Nuget URL: https://api.nuget.org/v3/index.json

对于.NET核心项目,在NuGet包管理器控制台中运行dotnet restore或dotnet build命令(会自动运行恢复)

您可以从运行控制台

> NuGet包管理器>包管理器控制台

帮助我通过工具>>> Nuget包管理>>>一般然后勾选选项允许Nuget下载丢失的包和自动检查丢失的包在visual studio中构建。