패키지에서 삭제된 이전 프레임워크 버전
.NET 6부터 대상 프레임워크가 다음보다 오래된 프로젝트에 핵심 라이브러리 패키지를 더 이상 설치할 수 없습니다.
- .NET Framework 4.6.1
- .NET Core 3.1
- .NET Standard 2.0
변경 내용 설명
이전에는 .NET Framework 4.6.1, .NET Core 3.1 또는 .NET Standard 2.0보다 오래된 프레임워크에서 패키지를 사용하더라도 패키지를 최신 버전으로 업그레이드할 수 있었습니다. .NET 6부터 이전 프레임워크에서 영향을 받은 패키지를 참조하는 경우 참조된 패키지를 최신 버전으로 더 이상 업데이트할 수 없습니다.
도입된 버전
.NET 6
변경 이유
모든 프레임워크에 대해 빌드를 계속하면 패키지의 복잡성과 크기가 증가합니다. 과거에 .NET은 현재 프레임워크에 대해서만 빌드하고 이전 프레임워크에 대한 이진 파일을 수집하여 이 문제를 해결했습니다. 수집은 빌드 중에 이전 버전의 패키지가 다운로드되고 이진 파일을 추출한다는 것을 의미합니다.
수집된 이진 파일을 사용한다는 것은 프레임워크가 삭제될 걱정 없이 항상 업데이트할 수 있다는 것을 의미하지만 버그 수정이나 새로운 기능을 얻을 수 없다는 의미이기도 합니다. 즉, 수집된 자산을 서비스할 수 없습니다. 더 이상 업데이트되지 않는 동일한 이전 이진 파일을 사용하더라도 패키지를 이후 버전으로 계속 업데이트할 수 있기 때문에 숨겨집니다.
.NET 6부터 .NET은 배송된 모든 자산을 서비스할 수 있도록 어떤 형태의 수집도 더 이상 수행하지 않습니다.
권장 조치
프로젝트가 유지 관리되지만 발전하지 않는 경우 영향을 받은 패키지를 업그레이드하지 마십시오. 이미 고정된 이진 파일을 사용 중이므로 이는 일반적으로 큰 손실이 아닙니다.
프로젝트가 발전하는 경우 다음과 같은 최신 프레임워크 버전으로 업그레이드합니다.
- .NET Framework 4.6.1
- .NET Core 3.1
- .NET Standard 2.0
영향을 받는 API
다음 패키지는 더 이상 이전 프레임워크를 제공하지 않습니다.
- Microsoft.Extensions.DependencyModel
- Microsoft.Win32.Registry.AccessControl
- Microsoft.Win32.SystemEvents
- System.Collections.Immutable
- System.ComponentModel.Annotations
- System.ComponentModel.Composition
- System.ComponentModel.Composition.Registration
- System.Composition.AttributedModel
- System.Composition.Convention
- System.Composition.Hosting
- System.Composition.Runtime
- System.Composition.TypedParts
- System.Data.Odbc
- System.Data.OleDb
- System.Diagnostics.DiagnosticSource
- System.Diagnostics.EventLog
- System.Diagnostics.PerformanceCounter
- System.DirectoryServices
- System.DirectoryServices.AccountManagement
- System.DirectoryServices.Protocols
- System.Drawing.Common
- System.IO.Packaging
- System.IO.Pipelines
- System.Management
- System.Net.Http.WinHttpHandler
- System.Net.WebSockets.WebSocketProtocol
- System.Numerics.Tensors
- System.Reflection.Context
- System.Reflection.Metadata
- System.Reflection.MetadataLoadContext
- System.Runtime.Caching
- System.Runtime.CompilerServices.Unsafe
- System.Security.Cryptography.Cng
- System.Security.Cryptography.OpenSsl
- System.Security.Cryptography.Pkcs
- System.Security.Cryptography.ProtectedData
- System.Security.Permissions
- System.ServiceProcess.ServiceController
- System.Speech
- System.Text.Encoding.CodePages
- System.Text.Encodings.Web
- System.Threading.AccessControl
- System.Threading.Channels
- System.Threading.Tasks.Dataflow
- System.Windows.Extensions
다음 패키지는 이제 구현이 .NET 6 플랫폼의 일부이므로 더 이상 업데이트되지 않습니다.
- Microsoft.Win32.Registry
- System.ComponentModel.Annotations
- System.IO.FileSystem.AccessControl
- System.IO.Pipes.AccessControl
- System.Security.AccessControl
- System.Security.Cryptography.Cng
- System.Security.Cryptography.OpenSsl
- System.Security.Principal.Windows
.NET