NuGet Package Manager Console 内置于 Visual Studio 在 Windows 2012 和更高版本。 (不包含在 Visual Studio 用于 Mac 或 Visual Studio Code。)html
控制台,你可使用NuGet PowerShell 命令若要查找,安装、 卸载和更新 NuGet 程序包。 使用控制台是在包管理器 UI 不提供了如何执行操做的状况下必需的。 若要使用nuget.exe
命令在控制台中,请参阅使用控制台中的 CLI nuget.exe。jquery
例如,查找和安装的包,可以使用三个简单步骤:web
在 Visual Studio 中,打开项目/解决方案并打开控制台使用工具 > NuGet 包管理器 > 程序包管理器控制台命令。shell
查找你想要安装的程序包。 若是你已经知道此,请跳到步骤 3。json
# Find packages containing the keyword "elmah" Find-Package elmah
运行安装命令:缓存
# Install the Elmah package to the project named MyProject. Install-Package Elmah -ProjectName MyProject
重要app
在控制台中可用的全部操做也均可以与NuGet CLI。 可是,控制台命令在 Visual Studio 和已保存的项目/解决方案的上下文中运行,而且一般完成多个其等效的 CLI 命令。 例如,安装经过控制台的包将引用添加到项目而 CLI 命令不运行。 为此,一般在 Visual Studio 中工做的开发人员喜欢使用 CLI 到控制台。ide
提示工具
许多控制台操做取决于使用已知的路径名称在 Visual Studio 中打开解决方案。 若是你有未保存的解决方案或没有解决方案,您能够看到此错误,"是未打开或保存解决方案。 请确保你已打开并保存解决方案。" 这表示控制台没法肯定解决方案的文件夹。 保存未保存的解决方案,或建立和保存解决方案,若是你尚未打开,应纠正该错误。布局
打开 Visual Studio 中使用控制台工具 > NuGet 包管理器 > 程序包管理器控制台命令。 在控制台中,能够排列和定位你的喜爱的 Visual Studio 窗口 (请参阅自定义 Visual Studio 中的窗口布局)。
默认状况下,控制台命令运行针对特定的包源和项目中控件的窗口的顶部设置:
选择一个不一样的包源和/或项目更改这些默认设置的后续命令。 覆盖而无需更改默认设置,这些设置的大多数命令支持-Source
和-ProjectName
选项。
若要管理的包源,选择齿轮图标。 这是一个指向快捷方式工具 > 选项 > NuGet 包管理器 > 程序包源对话框上所述包管理器 UI页。 此外,右侧为项目选择器控件清除控制台的内容:
最右边的按钮中断长时间运行的命令。 例如,运行Get-Package -ListAvailable -PageSize 500
列出上默认源 (如 nuget.org),可能须要几分钟时间运行的前 500 包。
# Add the Elmah package to the default project as specified in the console's project selector Install-Package Elmah # Add the Elmah package to a project named UtilitiesLib that is not the default Install-Package Elmah -ProjectName UtilitiesLib
请参阅安装包。
安装的包执行下列操做:
%USERPROFILE%\.nuget\packages
和锁定文件即project.assets.json
更新。packages.config
: 建立packages
在程序包文件入子文件夹中的解决方案根目录和副本的文件夹。 package.config
更新文件。app.config
和/或web.config
若是包使用源和配置文件转换。提示
安装的包的主要优点之一Install-Package
在控制台中的命令时,它将对项目的引用,就像使用程序包管理器 UI。 与此相反, nuget install
CLI 命令仅下载包,并不会自动添加引用。
# Uninstalls the Elmah package from the default project Uninstall-Package Elmah # Uninstalls the Elmah package and all its unused dependencies Uninstall-Package Elmah -RemoveDependencies # Uninstalls the Elmah package even if another package depends on it Uninstall-Package Elmah -Force
请参阅卸载包。 使用Get 包查看当前安装在默认项目中,若是你须要查找标识符的全部包。
卸载程序包执行下列操做:
app.config
或web.config
时已安装了包。提示
如Install-Package
、Uninstall-Package
命令具备与管理在项目中,引用的好处nuget uninstall
CLI 命令。
# Checks if there are newer versions available for any installed packages Get-Package -updates # Updates a specific package using its identifier, in this case jQuery Update-Package jQuery # Update all packages in the project named MyProject (as it appears in Solution Explorer) Update-Package -ProjectName MyProject # Update all packages in the solution Update-Package
# Find packages containing keywords Find-Package elmah Find-Package logging # List packages whose ID begins with Elmah Find-Package Elmah -StartWith # By default, Get-Package returns a list of 20 packages; use -First to show more Find-Package logging -First 100 # List all versions of the package with the ID of "jquery" Find-Package jquery -AllVersions -ExactMatch
请参阅查找包。 在 Visual Studio 2013 和更早版本,使用Get 包相反。
在 Visual Studio 2017,NuGet 和 NuGet 包管理器将自动安装时选择任何。提供与.NET 相关的工做负荷;你就能够还单独安装它,经过检查各个组件 > 代码工具 > NuGet 包管理器在 Visual Studio 2017 安装程序中的选项。
此外,若是你缺乏 NuGet 包管理器在 Visual Studio 2015 及更早版本,请检查工具 > 扩展和更新...和搜索 NuGet 包管理器扩展。 若是你没法使用 Visual Studio 中的扩展安装程序,你能够下载直接从扩展https://dist.nuget.org/index.html。
程序包管理器控制台不是当前适用于 Visual Studio for mac。 等效命令,可是,这些功能经过NuGet CLI。 适用于 Mac 的 visual Studio 也用于管理 NuGet 包存在一些 UI。 请参阅中你的项目包括 NuGet 包。
程序包管理器控制台不包括 Visual Studio 代码。
某些包安装新的控制台的命令。 例如,MvcScaffolding
建立等命令Scaffold
下面所示,这将生成 ASP.NET MVC 控制器和视图:
PowerShell 配置文件,能够提供经常使用的命令,只要你使用 PowerShell。 NuGet 支持一般在如下位置找到 NuGet 特定配置文件:
%UserProfile%\Documents\WindowsPowerShell\NuGet_profile.ps1
若要查找配置文件,请键入$profile
在控制台中:
$profile C:\Users\<user>\Documents\WindowsPowerShell\NuGet_profile.ps1
有关更多详细信息,请参阅Windows PowerShell 配置文件。
若要使 nuget.exe
CLI可用在程序包管理器控制台中,安装NuGet.CommandLine从控制台的包:
# Other versions are available, see http://www.nuget.org/packages/NuGet.CommandLine/ Install-Package NuGet.CommandLine -Version 4.4.1