英語で読む

次の方法で共有


.NET アプリケーションでパッケージの依存関係を管理する

この記事では、プロジェクト ファイルを編集するか CLI を使用して、パッケージの依存関係を追加および削除する方法について説明します。

<PackageReference> 要素

<PackageReference> プロジェクト ファイル要素の構造は次のとおりです。

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

Include属性は、プロジェクトに追加するパッケージの ID を指定します。 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 package add コマンドを実行します。 (SDK バージョンの .NET 9 以前を使用している場合は、代わりに dotnet add package フォームを使用してください)。

dotnet package add Microsoft.EntityFrameworkCore

依存関係を削除するには、次の例に示すように、 dotnet package remove コマンドを実行します。

dotnet package remove Microsoft.EntityFrameworkCore

ヒント

  • 参照先パッケージの .targets または .props ファイルに復元操作への入力を含めないでください。 これらの入力には、 PackageReference 項目、 ExcludeAssets 属性、使用する NuGet フィード、またはその他の NuGet 構成を含めることができます。 パッケージの .targets ファイルと .props ファイルは、NuGet の復元が完了するまで使用されません。 復元に必要なものは、パッケージの依存関係ではなく、プロジェクト ファイルまたはプロジェクト自体の .targets ファイル内にある必要があります。

  • コンソール アプリケーションまたはクラス ライブラリで ASP.NET API を使用する場合は、プロジェクト ファイルに FrameworkReference 項目を追加します。

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

    詳細については、「 ASP.NET Core 共有フレームワークの使用」を参照してください。

こちらもご覧ください


その他のリソース