이 문서에서는 .NET 10용 .NET SDK의 새로운 기능 및 향상된 기능을 설명합니다. 미리 보기 5용으로 업데이트되었습니다.
프레임워크 제공 패키지 참조 삭제
.NET 10부터 NuGet 감사 기능은 이제 프로젝트에서 사용하지 않는 프레임워크 제공 패키지 참조 정리할 있습니다. 이 기능은 기본적으로 모든 net
대상 프레임워크(예: net8.0
및 net10.0
) 및 .NET Standard 2.0 이상 대상 프레임워크에 대해 사용하도록 설정됩니다. 이러한 변경은 빌드 프로세스 중에 복원 및 분석되는 패키지 수를 줄이는 데 도움이 되며, 이로 인해 빌드 시간이 빨라지고 디스크 공간 사용량이 감소할 수 있습니다. 또한 NuGet 감사 및 기타 종속성 검사 메커니즘에서 거짓 양성을 줄일 수 있습니다.
이 기능을 사용하도록 설정하면 애플리케이션에서 생성된 .deps.json 파일의 내용이 감소할 수 있습니다. .NET 런타임에서 제공하는 모든 패키지 참조는 생성된 종속성 파일에서 자동으로 제거됩니다.
이 기능은 나열된 TFM에 대해 기본적으로 사용하도록 설정되어 있지만 프로젝트 파일 또는 RestoreEnablePackagePruning
파일에서 false
속성을 설정하여 사용하지 않도록 설정할 수 있습니다.
보다 일관된 명령 순서
.NET 10부터 dotnet
CLI 도구에는 보다 쉽게 기억하고 입력할 수 있도록 공통 명령에 대한 새로운 별칭이 포함되어 있습니다. 새로운 명령어는 다음 표에 표시됩니다.
새 명사 우선 양식 | 별칭에 대한 |
---|---|
dotnet package add |
dotnet add package |
dotnet package list |
dotnet list package |
dotnet package remove |
dotnet remove package |
dotnet reference add |
dotnet add reference |
dotnet reference list |
dotnet list reference |
dotnet reference remove |
dotnet remove reference |
새 명사 우선 양식은 일반 CLI 표준과 일치하므로 dotnet
CLI가 다른 도구와 더 일치합니다. 동사 우선 형태가 여전히 작동하긴 하지만, 스크립트와 문서에서 가독성과 일관성을 높이기 위해 명사 우선 형태를 사용하는 것이 좋습니다.
CLI 명령은 기본적으로 대화형 터미널에서 대화형 모드로 설정됩니다.
--interactive
이제 대화형 터미널의 CLI 명령에 대해 플래그가 기본적으로 사용하도록 설정됩니다. 이 변경을 통해 명령은 플래그를 명시적으로 설정하지 않고도 동적으로 자격 증명을 검색하거나 다른 대화형 동작을 수행할 수 있습니다. 비대화형 시나리오의 경우 를 지정 --interactive false
하여 대화형 작업을 사용하지 않도록 설정할 수 있습니다.
네이티브 셸 탭 완성 스크립트
이제 dotnet
CLI는 dotnet completions generate [SHELL]
명령을 통해 인기 있는 셸에 대한 네이티브 탭 완성 스크립트를 생성하는 기능을 지원합니다. 지원되는 셸에는 bash
, fish
, nushell
, powershell
, 및 zsh
가 포함됩니다. 이러한 스크립트는 더 빠르고 통합된 탭 완성 기능을 제공하여 유용성을 향상시킵니다. 예를 들어, PowerShell에서 다음 코드를 추가하여 자동 완성을 활성화할 수 있습니다 $PROFILE
.
dotnet completions script pwsh | out-String | Invoke-Expression -ErrorAction SilentlyContinue
콘솔 앱은 기본적으로 컨테이너 이미지를 만들 수 있습니다.
이제 콘솔 앱은 프로젝트 파일의 dotnet publish /t:PublishContainer
속성을 요구하지 않고 컨테이너 이미지를 <EnableSdkContainerSupport>
만들 수 있습니다. 그러면 콘솔 앱이 ASP.NET Core 및 Worker SDK 앱의 동작과 일치합니다.
컨테이너의 이미지 형식을 명시적으로 제어
새 <ContainerImageFormat>
속성을 사용하면 컨테이너 이미지의 형식을 명시적으로 둘 중 하나 Docker
또는 OCI
로 설정할 수 있습니다. 이 속성은 기본 이미지 형식 및 컨테이너가 다중 아키텍처인지 여부에 따라 달라지는 기본 동작을 재정의합니다.
dotnet test
에서 Microsoft 테스트 플랫폼 지원
.NET 10 dotnet test
부터 기본적으로 Microsoft.Testing.Platform을 지원합니다. 이 기능을 사용하도록 설정하려면 dotnet.config 파일에 다음 구성을 추가합니다.
[dotnet.test.runner]
name = "Microsoft.Testing.Platform"
자세한 내용은 테스트를 dotnet test
참조하세요.
.NET