Sta*_*Cub 15 nuget nuget-package
我正在尝试卸载NuGet安装的一些软件包.根据这里描述的文档,当我选择已安装的软件包时,我会看到一个卸载按钮(下面的第一个屏幕截图).但是,我只看到一个Manage按钮(下面的第二个截图).任何人都可以告诉我如何卸载包?


Mat*_*ard 13
如果向下滚动到您链接到的NuGet文档页面的Managing Installed Packages部分,您将看到Manage按钮和说明.
在NuGet 1.4中,引入了一项新功能,允许您在解决方案资源管理器中选择解决方案,并在一个步骤中添加/删除多个项目中的包.以前,您必须在解决方案资源管理器中选择每个项目,并一次添加/删除每个项目中的包.
如果单击"管理"按钮,将显示"选择项目"对话框,您可以在其中取消选中要从中卸载NuGet包的项目.

如果在解决方案资源管理器中选择项目而不是解决方案,则可以从该选定项目中添加/删除包.在这种情况下,您将只看到"安装"和"卸载"按钮.
Sta*_*Cub 13
最后,我发现我必须手动编辑.sln解决方案文件并删除这些行:
GlobalSection(ExtensibilityGlobals) = postSolution
EnterpriseLibraryConfigurationToolBinariesPath = packages\Unity.2.1.505.0\lib\NET35;packages\Unity.Interception.2.1.505.0\lib\NET35;packages\EnterpriseLibrary.Common.5.0.505.0\lib\NET35;packages\EnterpriseLibrary.Data.5.0.505.0\lib\NET35
EndGlobalSection
Run Code Online (Sandbox Code Playgroud)
删除解决方案文件中的上述行后,这些包在NuGet Packages窗口"Installed package"页面中消失.只剩下一个包了,我现在可以看到"卸载"按钮.

编辑: 我还必须删除解决方案目录中的packages文件夹.
有时存在不允许卸载程序包的依赖项,但无论如何都需要这样做(即,如果您无意中安装了具有依赖项的程序包的两个不同版本).
发生这种情况时,卸载软件包的唯一方法是强制卸载,这只能通过软件包管理器控制台完成.
在进入控制台之前,您应该打开Manage NuGet Packages窗口,记下软件包的Id和Version,当您单击软件包时,它会出现在右侧窗格中.
然后,您可以关闭"管理"窗口,然后打开控制台(程序包管理器控制台),并运行以下命令:
uninstall-package -Id YourPackageId -Force -Version YourPackageVersion
Run Code Online (Sandbox Code Playgroud)
请注意-Force参数.例如
uninstall-package -Id Unity -Force -Version 3.0.1304.0
Run Code Online (Sandbox Code Playgroud)
此命令允许在与版本2并行安装时卸载版本3,这不能通过"管理"窗口完成.
| 归档时间: |
|
| 查看次数: |
38776 次 |
| 最近记录: |