使用 dotnet CLI 安装和管理 NuGet 包

可以使用 Windows、macOS 或 Linux 上的 dotnet CLI 工具在 .NET 项目和解决方案中轻松安装、卸载和更新 NuGet 包。 本文介绍用于管理 NuGet 包的最常见 dotnet CLI 命令。

dotnet CLI 在 .NET、.NET Core、.NET Standard SDK 样式项目和其他任何 SDK 样式项目(例如面向 .NET Framework 的项目)上运行。 有关详细信息,请参阅 .NET 项目 SDK

对于大多数命令,CLI 工具将查找当前目录中的项目文件,除非在命令中将其他项目文件指定为可选开关。 有关命令及其参数的完整列表,请参阅 dotnet CLI 命令

先决条件

  • .NET Core SDK,提供dotnet命令行工具。 从 Visual Studio 2017 开始,dotnet CLI 会自动安装所有 .NET 和 .NET Core 相关工作负载。

安装或更新包

dotnet add package 命令将包引用添加到项目文件,然后运行dotnet restore以安装包。

  1. 打开命令行并切换到包含项目文件的目录。

  2. 使用以下命令安装 NuGet 包:

    dotnet add package <PACKAGE_NAME>
    

    例如,若要安装 Newtonsoft.Json 包,请使用以下命令

    dotnet add package Newtonsoft.Json
    
  3. 命令完成后,可以打开项目文件以查看包引用。

    例如,打开 .csproj 文件以查看添加 Newtonsoft.Json 的包引用:

    <ItemGroup>
      <PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
    </ItemGroup>
    

安装特定版本的包

除非指定其他版本,否则该 dotnet add package 命令将安装包的最新版本。

若要安装 NuGet 包的特定版本,请使用可选 -v--version 开关:

dotnet add package <PACKAGE_NAME> -v <VERSION>

例如,若要添加包的版本 Newtonsoft.Json 12.0.1,请使用以下命令:

dotnet add package Newtonsoft.Json --version 12.0.1

列出包引用

使用 dotnet list package 命令列出项目的包引用和版本:

dotnet list package

删除包

使用 dotnet remove package 命令从项目文件中删除包引用。

dotnet remove package <PACKAGE_NAME>

例如,若要删除 Newtonsoft.Json 包,请使用以下命令:

dotnet remove package Newtonsoft.Json

恢复软件包

dotnet restore 命令还原项目文件中列出的<PackageReference>包。 有关详细信息,请参阅 项目文件中的 PackageReference

.NET Core 2.0 及更高版本 dotnet build 以及 dotnet run 命令会自动还原包。 从 NuGet 4.0 起,dotnet restore 运行与 nuget restore 相同的代码。

若要还原包,请执行以下步骤dotnet restore

  1. 打开命令行并切换到包含项目文件的目录。
  2. 运行 dotnet restore

后续步骤