共用方式為


在 .NET 應用程式中管理套件相依性

本文說明如何藉由編輯項目檔或使用 CLI 來新增和移除套件相依性。

<PackageReference> 元素

<PackageReference>專案檔案具有下列結構:

<PackageReference Include="PACKAGE_ID" Version="PACKAGE_VERSION" />

屬性 Include 會指定要加入至專案的封裝標識碼。 屬性 Version 會指定要取得的版本。 版本會依 NuGet 版本規則指定。

使用條件來新增只能在特定目標中使用的相依性,如下列範例所示:

<PackageReference Include="PACKAGE_ID" Version="PACKAGE_VERSION" Condition="'$(TargetFramework)' == 'netcoreapp2.1'" />

只有在該指定目標發生組建時,上述範例中的相依性才有效。 條件中的 $(TargetFramework) 是在專案中設定的 MSBuild 屬性。 針對最常見的 .NET 應用程式,您不需要這麼做。

新增和移除相依性

您可以編輯項目檔或透過 .NET CLI 命令來新增和移除相依性。

編輯專案檔

若要新增相依性,請在<PackageReference>元素內新增<ItemGroup>項目。 您可以將內容新增至現有的<ItemGroup>,或建立新的<ItemGroup>

<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    ...
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.EntityFrameworkCore" Version="3.1.2" />
  </ItemGroup>

</Project>

若要移除相依性,請從項目檔中移除其 <PackageReference> 項目。

使用命令列介面(CLI)

若要新增相依性,請執行 dotnet package add 命令,如下列範例所示。 (如果您使用 .NET 9 或更早版本的 SDK 版本,請改用 dotnet add package 表單。

dotnet package add Microsoft.EntityFrameworkCore

若要移除相依性,請執行 dotnet package remove 命令,如下列範例所示。 (如果您使用 .NET 9 或更早版本的 SDK 版本,請改用 dotnet remove package 表單。

dotnet package remove Microsoft.EntityFrameworkCore

提示

  • 請勿在參考套件的 .targets.props 檔案中包含還原作業的輸入。 這些輸入可以包含 PackageReference 項目、ExcludeAssets 屬性、要使用的 NuGet 源,或其他 NuGet 組態。 在 NuGet 還原完成之前,不會使用套件中的 .targets.props 檔案。 還原所需的任何內容必須位於專案本身的項目檔或 .targets 檔案中,而不是套件相依性。

  • 如果您想要在主控台應用程式或類別庫中使用 ASP.NET API,請將 FrameworkReference 專案新增至項目檔:

    <FrameworkReference Include="Microsoft.AspNetCore.App" />

    如需詳細資訊,請參閱 使用 ASP.NET Core 共用架構

另請參閱