다음을 통해 공유


.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 명령을 통해 종속성을 추가하고 제거할 수 있습니다.

프로젝트 파일 편집

종속성을 추가하려면 <PackageReference> 요소 내에 <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 구성이 포함될 수 있습니다. 패키지 의 .targets.props 파일은 NuGet 복원이 완료될 때까지 사용되지 않습니다. 복원에 필요한 모든 항목은 패키지 종속성이 아니라 프로젝트 파일 또는 프로젝트 자체의 .targets 파일에 있어야 합니다.

  • 콘솔 애플리케이션 또는 클래스 라이브러리에서 ASP.NET API를 사용하려면 프로젝트 파일에 FrameworkReference 항목을 추가합니다.

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

    자세한 내용은 ASP.NET Core 공유 프레임워크 사용을 참조하세요.

참고하십시오