共用方式為


管理 .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 命令來新增和移除相依性。

編輯專案檔

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

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

  <PropertyGroup>
    ...
  </PropertyGroup>

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

</Project>

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

使用 CLI

若要新增相依性,請執行 dotnet add package 命令,如下列範例所示:

dotnet add package Microsoft.EntityFrameworkCore

若要移除相依性,請執行 dotnet remove package 命令,如下列範例所示:

dotnet remove package Microsoft.EntityFrameworkCore

提示

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

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

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

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

另請參閱