我试图给SignalR Sample一个测试驱动器,但它似乎引用了一个不再可用的旧版SignalR.实际的问题是NuGet无法在没有首次恢复的情况下删除不可用的包!
PM> Install-Package Microsoft.AspNet.SignalR Install-Package : Some NuGet packages are missing from the solution. The packages need to be restored in order to build the dependency graph. Restore the packages before performing any operations. At line:1 char:1 + Install-Package Microsoft.AspNet.SignalR + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation: (:) [Install-Package], InvalidOperationException + FullyQualifiedErrorId : NuGetMissingPackages,NuGet.PackageManagement.PowerShellCmdlets.InstallPackageCommand
然后会有一个Restore
按钮Package Manager Console
,按下它将导致以下错误:
An error occurred while trying to restore packages: Unable to find version '2.1.0-pre-131116-b279' of package 'Microsoft.AspNet.SignalR.Client'
如果找不到当前版本,如何安装较新版本的寻址包?
我正在使用:
Microsoft Visual Studio Community 2015 Version 14.0.24720.00 Update 1 Microsoft .NET Framework Version 4.6.01038 NuGet Package Manager 3.3.0
[UPDATE]
当我尝试卸载麻烦的包时:
PM> Uninstall-Package -Id Microsfot.AspNet.SignalR -RemoveDependencies -Force Uninstall-Package : Some NuGet packages are missing from the solution. The packages need to be restored in order to build the dependency graph. Restore the packages before performing any operations. At line:1 char:1 + Uninstall-Package -Id Microsfot.AspNet.SignalR -RemoveDependencies -F ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation: (:) [Uninstall-Package], InvalidOperationException + FullyQualifiedErrorId : NuGetMissingPackages,NuGet.PackageManagement.PowerShellCmdlets.UninstallPackageCommand
Joe Hawkins.. 30
您可以通过以下方式手动删除依赖项
关闭Visual Studio(不是硬性要求,但很有帮助)
在文本编辑器中,从packages.config中删除依赖项
从packages /目录中删除包
在文本编辑器中,从.csproj文件中删除对包的所有引用
启动Visual Studio
通过NuGet重新安装包
Upvoted,因为它的工作...但这是疯了!如果NuGet包不再可用,肯定有一个更容易处理的方法吗? (13认同)
小智.. 12
如果您知道Feed中当前存在的版本,则可以使用更简单的解决方案.该解决方案可以修复每个项目中的每个包.
打开packages.config文件(如果你有多个项目,为每个packages.config文件执行此操作)
将版本更新为正确的版本(即更改版本属性)
在程序包管理器控制台中,键入 Update-Package -Reinstall
希望能帮助到你
您可以通过以下方式手动删除依赖项
关闭Visual Studio(不是硬性要求,但很有帮助)
在文本编辑器中,从packages.config中删除依赖项
从packages /目录中删除包
在文本编辑器中,从.csproj文件中删除对包的所有引用
启动Visual Studio
通过NuGet重新安装包
如果您知道Feed中当前存在的版本,则可以使用更简单的解决方案.该解决方案可以修复每个项目中的每个包.
打开packages.config文件(如果你有多个项目,为每个packages.config文件执行此操作)
将版本更新为正确的版本(即更改版本属性)
在程序包管理器控制台中,键入 Update-Package -Reinstall
希望能帮助到你