帮助我度过难关 的 工具 强> >>> 的 Nuget包管理器 强> >>> 的 一般 强> 然后打勾选项 的 允许Nuget下载丢失的包 强> 和 的 在visual studio中构建期间自动检查缺少的包 强> 。
您可以选择从“packages”文件夹中删除所有文件夹,然后选择“管理解决方案的NuGet包...”。在这种情况下,NuGet Packages Windows上会出现“Restore”按钮。
我在尝试构建示例项目时遇到了同样的问题 gplus-快速启动-CSHARP主 。
我仔细查看了错误消息并找到了克服此错误的解决方法,希望这会有所帮助。
请享用 !!
如果其他人在Visual Studio 2017中发现此问题,请确保项目由.sln文件而不是文件夹打开,因为如果文件夹打开,visual studio将不会获取设置。如果您使用Visual Studio在线服务进行git,则默认情况下会发生这种情况。
如果您遇到任何问题或缺少任何软件包,只需在项目中右键单击并选择“ 的 管理NuGet包以获得解决方案...... 强> “。单击此按钮后,将打开一个屏幕,您会看到菜单栏中显示”恢复“:
单击它,将自动安装所需的包。 我相信这就是你所寻找的,这解决了我的问题。
使用此命令还原所有包
dotnet restore
我不得不删除package文件夹关闭并重新打开(VS2015)解决方案。我没有迁移,我没有将包检入源代码控制。我只能说是搞砸了,这就解决了。
的 伊万·布拉尼茨 强> 解决方案基本上是为我解决的问题,但可以分享更多细节。
在我的情况下,我在 的 VS 2015 强> 运用 的 自动包恢复 强> 和 的 TFS 强> 。这都是非常默认的东西。
问题是当另一个开发人员试图从TFS获得解决方案时,一些软件包没有完全恢复。 (为什么,我还不太确定。)但是packages文件夹包含一个用于引用和NuGet包的文件夹,但它没有被扩展(比如说包含.dll的lib文件夹丢失了。)这一半那里,但不是非常正确的概念是阻止包恢复。
你会认识到这一点,因为引用会有一个关于无法解决的黄色感叹号。
所以 的 解 强> 的 的 删除包中的文件夹 强> 删除包还原阻止问题。然后你可以 的 右键单击顶级解决方案级别 强> 获得选项 的 恢复包 强> ,现在它应该工作。
程序包管理器控制台(Visual Studio,工具> NuGet程序包管理器>程序包管理器控制台):运行Update-Package -reinstall -ProjectName命令,其中是受影响的项目在解决方案资源管理器中显示的名称。使用Update-Package -reinstall自行恢复解决方案中的所有包。请参阅Update-Package。如果需要,您还可以重新安装单个包。
从 https://docs.microsoft.com/en-us/nuget/quickstart/restore
更简单的是,在您的解决方案中添加一个.nuget文件夹,然后会出现'Restore Nuget Packages'(不确定nuget.exe是否需要存在才能正常工作)。
也可能是在您尝试安装软件包时运行程序的结果。如果您在内置IIS在后台运行时尝试单击它,它会变灰。
这种方法对我有用:
你现在已经启用了 nuget包恢复 在VS2015中也是如此。
关闭VS.删除packages文件夹下的所有内容重新打开您的解决方案。右键单击您的项目,选择“Manage nuget packages ...”。您将看到“Nuget Package Manager”窗口顶部出现一个黄色条,要求您恢复包。这对我有用。
对于 的 .NET核心项目 强> , 跑 dotnet restore 要么 dotnet build 命令输入 NuGet Package Manager Console (自动运行恢复)
dotnet build
NuGet Package Manager Console
您可以从中运行控制台
工具> NuGet包管理器>包管理器控制台
我用了 msbuild /t:restore 。
msbuild /t:restore
我的问题出在MSBuild上 所以我跟着 的 @Vinney Kelly 强> 的链接: 将MSBuild集成解决方案迁移到自动包还原
和...
那就像一个CHARM =]
的 的MSBuild 强> : 使用 msbuild /t:restore 命令,恢复包 项目文件中列出的包( 的 PackageReference 强> 只要)。可得到 仅在NuGet 4.x +和MSBuild 15.1+中包含 的 视觉 强> 的 2017年工作室 强> 。 nuget restore 和 dotnet restore 都使用此命令 适用的项目。
nuget restore
如果所有其他方法都失败了(或者可能在此之前),您可能需要检查并查看NuGet是否是包源。我安装了VS2017,默认情况下不存在。我觉得这有点奇怪。
我想对于asp.net 4项目我们正在转向自动恢复,所以没有必要这样做。对于较旧的项目,我认为需要进行一些转换工作。
http://docs.nuget.org/docs/workflows/migrating-to-automatic-package-restore