如何在 Visual Studio 之外使用 Package Manager Console powershell

Posted

技术标签:

【中文标题】如何在 Visual Studio 之外使用 Package Manager Console powershell【英文标题】:How to use Package Manager Console powershell outside visual studio 【发布时间】:2019-07-27 00:53:57 【问题描述】:

我有一个 powershell 脚本,其中包含以下 nuget 命令:

Get-Project -All

Get-Package -ProjectName

当我在 Visual Studio 上运行包管理器控制台时:

PM> .\download-packages-license.ps1

它有效,但我无法运行 powershell。我需要帮助。

Powershell 错误信息:

download-packages-license.ps1 无法加载,因为在此系统上禁用了运行脚本。有关详细信息,请参阅 https://go.microsoft.com/ 上的 about_Execution_Policies fwlink/?LinkID=135170。 在行:1 字符:1 + .\download-packages-license.ps1 + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : SecurityError: (:) [], PSSecurityException + FullyQualifiedErrorId : UnauthorizedAccess

【问题讨论】:

【参考方案1】:

如何在 Visual Studio 之外使用 Package Manager Console powershell

恐怕您无法在 Visual Studio 之外使用 Package Manager Console powershell。那是因为包管理器控制台提供的是对 visual studio 对象的访问:

https://github.com/NuGet/Home/issues/1512

因此,如果您想在 Visual Studio 之外使用 Package Manager Console powershell,我们必须手动使用 powershell 解析 .csproj 文件或 .sln 解决方案文件,例如:

How do I programmatically list all projects in a solution?

希望这会有所帮助。

【讨论】:

以上是关于如何在 Visual Studio 之外使用 Package Manager Console powershell的主要内容,如果未能解决你的问题,请参考以下文章

程序在 Visual Studio 之外无法运行

WPF 应用程序在 Visual Studio 之外崩溃

调试在 Visual Studio 之外运行的应用程序

在 Visual Studio 之外启动时程序运行速度较慢

程序在 Visual Studio 之外运行时表现不同

只有在 Visual Studio 之外运行 EXE 时才会出现发布错误