.NET Framework와 .NET 둘 다에 대해 병렬로 컴파일하는 솔루션을 만들 수 있습니다. 이 문서에서는 이 목표를 달성하는 데 도움이 되는 몇 가지 프로젝트 조직 옵션을 설명합니다. .NET을 사용하여 프로젝트 레이아웃을 설정하는 방법을 결정할 때 고려해야 할 몇 가지 일반적인 시나리오는 다음과 같습니다. 목록에는 원하는 모든 항목이 포함되지 않을 수 있습니다.
기존 프로젝트와 .NET 프로젝트를 단일 프로젝트로 결합
이점:
- 각각 다른 .NET Framework 버전 또는 플랫폼을 대상으로 하는 여러 프로젝트가 아닌 단일 프로젝트를 컴파일하여 빌드 프로세스를 간소화합니다.
- 단일 프로젝트 파일을 관리해야 하므로 다중 대상 프로젝트에 대한 원본 파일 관리를 간소화합니다. 원본 파일을 추가하거나 제거할 때 대체 방법을 사용하려면 이러한 파일을 다른 프로젝트와 수동으로 동기화해야 합니다.
- 사용할 NuGet 패키지를 쉽게 생성합니다.
- 컴파일러 지시문을 사용하여 특정 .NET Framework 버전에 대한 코드를 작성할 수 있습니다.
단점:
- 개발자는 Visual Studio 2019 이상 버전을 사용하여 기존 프로젝트를 열어야 합니다. 이전 버전의 Visual Studio를 지원하려면 프로젝트 파일을 다른 폴더에 유지하는 것이 더 좋습니다.
-
이점:
- Visual Studio 2019 이상 버전이 없을 수 있는 개발자 및 기여자를 위해 기존 프로젝트에 대한 개발을 지원합니다.
- 해당 프로젝트에 코드 변동이 필요하지 않으므로 기존 프로젝트에서 새 버그를 만들 가능성을 낮춥니다.
이 예제 GitHub 리포지토리를 살펴보겠습니다. 아래 그림에서는 이 리포지토리를 배치하는 방법을 보여줍니다.
다음 섹션에서는 예제 리포지토리를 기반으로 .NET에 대한 지원을 추가하는 여러 가지 방법을 설명합니다.
기존 프로젝트를 다중 대상 .NET 프로젝트로 바꾸기
기존 *.csproj 파일이 제거되고 여러 프레임워크를 대상으로 하는 단일 *.csproj 파일이 만들어지도록 리포지토리를 다시 구성합니다. 단일 프로젝트가 다른 프레임워크에 대해 컴파일할 수 있기 때문에 이 옵션은 좋은 옵션입니다. 또한 대상 프레임워크당 다양한 컴파일 옵션 및 종속성을 처리할 수 있습니다.
예제 코드는 GitHub를 참조하세요.
주의할 변경 내용은 다음과 같습니다.
-
packages.config 및 *.csproj를 새 .NET *.csproj로 대체합니다. NuGet 패키지는 .으로
<PackageReference> ItemGroup
지정됩니다.
기존 프로젝트 유지 및 .NET 프로젝트 만들기
이전 프레임워크를 대상으로 하는 기존 프로젝트가 있는 경우 이러한 프로젝트를 그대로 두고 .NET 프로젝트를 사용하여 향후 프레임워크를 대상으로 지정할 수 있습니다.
예제 코드는 GitHub를 참조하세요.
.NET 및 기존 프로젝트는 별도의 폴더에 보관됩니다. 프로젝트를 별도의 폴더에 유지하면 Visual Studio 2019 이상의 버전을 사용할 필요가 없습니다. 이전 프로젝트만 여는 별도의 솔루션을 만들 수 있습니다.
참고하십시오
.NET