zoukankan      html  css  js  c++  java
  • C# NuGet包管理命令

    NuGet Package Manager Console 内置于 Visual Studio 在 Windows 2012 和更高版本。 (不包含在 Visual Studio 用于 Mac 或 Visual Studio Code。)

    控制台,你可以使用NuGet PowerShell 命令若要查找,安装、 卸载和更新 NuGet 程序包。 使用控制台是在包管理器 UI 不提供了如何执行操作的情况下必需的。 若要使用nuget.exe命令在控制台中,请参阅使用控制台中的 CLI nuget.exe

    例如,查找和安装的包,可使用三个简单步骤:

    1. 在 Visual Studio 中,打开项目/解决方案并打开控制台使用工具 > NuGet 包管理器 > 程序包管理器控制台命令。

    2. 查找你想要安装的程序包。 如果你已经知道此,请跳到步骤 3。

      ps
      # Find packages containing the keyword "elmah"
      Find-Package elmah
      
    3. 运行安装命令:

      ps
      # Install the Elmah package to the project named MyProject.
      Install-Package Elmah -ProjectName MyProject
      

    重要

    在控制台中可用的所有操作也都可以与NuGet CLI。 但是,控制台命令在 Visual Studio 和已保存的项目/解决方案的上下文中运行,并且通常完成多个其等效的 CLI 命令。 例如,安装通过控制台的包将引用添加到项目而 CLI 命令不运行。 为此,通常在 Visual Studio 中工作的开发人员喜欢使用 CLI 到控制台。

    提示

    许多控制台操作取决于使用已知的路径名称在 Visual Studio 中打开解决方案。 如果你有未保存的解决方案或没有解决方案,您可以看到此错误,"是未打开或保存解决方案。 请确保你已打开并保存解决方案。" 这表示控制台无法确定解决方案的文件夹。 保存未保存的解决方案,或创建和保存解决方案,如果你还没有打开,应纠正该错误。

    打开的控制台和控制台控件

    1. 打开 Visual Studio 中使用控制台工具 > NuGet 包管理器 > 程序包管理器控制台命令。 在控制台中,可以排列和定位你的喜好的 Visual Studio 窗口 (请参阅自定义 Visual Studio 中的窗口布局)。

    2. 默认情况下,控制台命令运行针对特定的包源和项目中控件的窗口的顶部设置:

      对包源和项目程序包管理器控制台控制

    3. 选择一个不同的包源和/或项目更改这些默认设置的后续命令。 覆盖而无需更改默认设置,这些设置的大多数命令支持-Source-ProjectName选项。

    4. 若要管理的包源,选择齿轮图标。 这是一个指向快捷方式工具 > 选项 > NuGet 包管理器 > 程序包源对话框上所述包管理器 UI页。 此外,右侧为项目选择器控件清除控制台的内容:

      程序包管理器控制台设置和清除控件

    5. 最右边的按钮中断长时间运行的命令。 例如,运行Get-Package -ListAvailable -PageSize 500列出上默认源 (如 nuget.org),可能需要几分钟时间运行的前 500 包。

      程序包管理器控制台停止控件

    安装的包

    ps
    # 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
    

    请参阅安装包

    安装的包执行下列操作:

    • 与默示协议的控制台窗口中显示适用的许可条款。 如果你不同意这些条款,你应立即卸载程序包。
    • 在正在使用的任何引用格式添加到项目的引用。 引用随后将出现在解决方案资源管理器和适用的参考格式文件。 但是,请注意,采用 PackageReference,则需要先保存该项目才能直接看到项目文件中的更改。
    • 缓存包:
      • PackageReference: 在缓存包%USERPROFILE%.nugetpackages和锁定文件即project.assets.json更新。
      • packages.config: 创建packages在程序包文件入子文件夹中的解决方案根目录和副本的文件夹。 package.config更新文件。
    • 更新app.config和/或web.config如果包使用源和配置文件转换
    • 如果项目中尚不存在,请安装任何依赖项。 中所述,这可能会更新在过程中,包版本依赖项解析
    • 如果可用,请在 Visual Studio 窗口中显示包的自述文件。

    提示

    安装的包的主要优势之一Install-Package在控制台中的命令时,它将对项目的引用,就像使用程序包管理器 UI。 与此相反, nuget install CLI 命令仅下载包,并不会自动添加引用。

    卸载包

    ps
    # 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 包查看当前安装在默认项目中,如果你需要查找标识符的所有包。

    卸载程序包执行下列操作:

    • 将对包从项目 (和正在使用的任何引用格式) 的引用。 引用不再出现在解决方案资源管理器。 (你可能需要重新生成该项目才能看到它从删除Bin文件夹。)
    • 反转对所做任何更改app.configweb.config时已安装了包。
    • 如果没有剩余的包使用这些依赖关系,依赖以前安装中删除项。

    提示

    Install-PackageUninstall-Package命令具有与管理在项目中,引用的好处nuget uninstallCLI 命令。

    更新程序包

    ps
    # 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
    

    请参阅Get 包更新包

    查找包

    ps
    # 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 控制器和视图:

    安装和使用 MvcScaffold

    设置 NuGet PowerShell 配置文件

    PowerShell 配置文件,可以提供常用的命令,只要你使用 PowerShell。 NuGet 支持通常在以下位置找到 NuGet 特定配置文件:

    %UserProfile%DocumentsWindowsPowerShellNuGet_profile.ps1
    

    若要查找配置文件,请键入$profile在控制台中:

    ps
    $profile
    C:Users<user>DocumentsWindowsPowerShellNuGet_profile.ps1
    

    有关更多详细信息,请参阅Windows PowerShell 配置文件

    使用 nuget.exe CLI 在控制台中

    若要使 nuget.exe CLI可用在程序包管理器控制台中,安装NuGet.CommandLine从控制台的包:

    ps
    # Other versions are available, see http://www.nuget.org/packages/NuGet.CommandLine/
    Install-Package NuGet.CommandLine -Version 4.4.1
  • 相关阅读:
    centos 配置puTTY rsa自动登录
    Linux LVM 简单操作
    linux 系统下有sda和hda的硬件设备分别代表什么意思
    Centos 安装Sublime text 3
    编译安装MySQL-5.7.13
    药品查询网的数据库
    获得Android设备的唯一序列号
    Android中设置TextView的颜色setTextColor
    介绍几款网页数据抓取软件 分类: 业余 2015-08-07 18:09 5人阅读 评论(0) 收藏
    网上处方药物手册Rxlist 及其药学信息资源 分类: 业余 2015-08-07 14:16 8人阅读 评论(0) 收藏
  • 原文地址:https://www.cnblogs.com/zhaogaojian/p/8398531.html
Copyright © 2011-2022 走看看