IT TIP

새로운 netstandardapp과 netcoreapp TFM의 차이점은 무엇입니까?

itqueen 2020. 11. 5. 20:00
반응형

새로운 netstandardapp과 netcoreapp TFM의 차이점은 무엇입니까?


NuGet이 최근 다음을 포함하여 .NET Core와 관련된 몇 가지 새로운 TFM에 대한 지원을 추가했음을 확인했습니다.

  • netstandard (1.0-1.5)
  • netstandardapp (1.5)
  • netcoreapp (1.0)

내가 아는 한, netstandard.NET Core는 휴대용 프로필에 해당합니다. 지원하는 모든 플랫폼을 명시 적으로 지정하는 대신 단일 모니 커를 사용하여 여러 플랫폼을 대상으로 지정할 수 있습니다 (예 : portable-net45+netcore45+wp81.

한편 이 문서 에 따르면 netstandardapp.NET Core의 콘솔 애플리케이션과 비슷합니다. 모든 .NET Core 런타임 (예 : CoreCLR, CoreRT)을 나타냅니다.

그렇다면 정확히 무엇일까요 netcoreapp? 여기 에서 추적 문제를 찾았 습니다. 하단에 차이점이 무엇인지 설명하는 주석이 포함되어 있지만 차이점이 무엇인지 알 수 없습니다.

NETStandard.Library + 앱 호스트

.NET Core 기본 설치

이다. 누군가 나에게 설명해 주시겠습니까?


.NET 표준 라이브러리 (netstandard)는 앱 모델 전체에서 일관된 라이브러리입니다. .NET Core (netcoreapp)는 .NET 표준 라이브러리에서 실행되며 AppModel입니다. github 페이지에서 .NET Standard 애플리케이션이 무엇이며 .NET Core ( https://github.com/dotnet/corefx/blob/master/Documentation/architecture/net-standard-applications.md ) 및 ( https://github.com/dotnet/corefx/blob/master/Documentation/architecture/net-platform-standard.md )

업데이트 : .NETStandardapp은 더 이상 사용되지 않습니다. NETCore 앱이이를 대체합니다 ( https://github.com/NuGet/Home/issues/2524 )

Q : .NET Standard 애플리케이션이란 무엇입니까? A : .NET Standard 애플리케이션은 모든 .NET Core 런타임 (CoreCLR (현재), .NETNative (향후))에서 실행할 수있는 애플리케이션입니다. 여러 .NET 코어 플랫폼 (Windows, OSX, Linux) 중 하나에서 실행할 수 있습니다. 주어진 런타임에서 제공하는 호스트에 의존합니다. 애플리케이션이 의존하는 패키지에서 빌드 된 구성 가능한 프레임 워크입니다. 어셈블리 로딩 정책은 애플리케이션 구성없이 새로운 버전의 종속성을 허용합니다 (예 : BindingRedirects가 필요하지 않음).

Q : .NETCore와 어떻게 다릅니 까? A : .NETCore 대상 프레임 워크는 Windows 8, Windows 8.1 및 유니버설 Windows 플랫폼 애플리케이션을 나타냅니다. 호환성을 위해이 모니 커는 ".NET Core 애플리케이션"에 재사용 할 수 없습니다. 브랜딩 중복은 안타깝습니다.

Q : .NETStandard와 다른 점은 무엇입니까? A : NETStandard 대상 프레임 워크는 많은 프레임 워크 및 플랫폼의 API 표면을 나타내는 추상 대상 프레임 워크입니다. NETStandard 어셈블리는 .NET Desktop, Windows Phone, Universal Windows Platform 애플리케이션, .NET Standard 애플리케이션 등과 같이 해당 어셈블리가 대상으로하는 NETStandard를 지원하는 모든 플랫폼에서 실행될 수 있습니다. NETStandardApplication은 단일 항목을 나타내는 구체적인 대상 프레임 워크입니다. API 표면과 구현을 모두 갖춘 플랫폼. .NET 표준 응용 프로그램은 자체적으로 실행할 수 있습니다. .NETStandard 라이브러리는 해당 유형의 응용 프로그램에서 사용하기 위해 특정 구체적인 대상 프레임 워크에 대해 게시되거나 사용되어야합니다.

.NET 미래 혁신 개요


새로운 netstandardapp과 netcoreapp TFM의 차이점은 무엇입니까?

netstandardapp더 이상 사용되지 않습니다 netcoreapp.

그렇다면 netcoreapp은 정확히 무엇입니까?

netcoreapp.NET Core 플랫폼의 대상 프레임 워크 모니 커입니다. netcoreappproject.json의 프레임 워크 섹션에 추가 하면 앱 빌드가 .NET Core에서 실행됩니다.

NETStandard.Library + 앱 호스트와 .NET Core 기본 설치의 차이점이 무엇인지 모르겠습니다. 누군가 나에게 설명해 주시겠습니까?

NETStandard.Library + 앱 호스트 는 NetStandard.App 패키지입니다. 이것을 사용하지 마십시오-그것은 죽었습니다. 여기에는 세 개의 앱 호스트 패키지와 표준 라이브러리가 포함됩니다.

  • Microsoft.NETCore.DotNetHostPolicy
  • Microsoft.NETCore.Platforms
  • Microsoft.NETCore.Runtime
  • NETStandard.Library

NET Core 기본 설치 는 Microsoft.NetCore.App 패키지입니다. 대신 이것을 사용하십시오. 그것은 그들 중 두 스크랩, 위의 패키지의 두 가지 유지하고, 37에 대한 자세한 추가 Microsoft.*하고 System.*패키지를.

  • 추가 Microsoft.*어셈블리
  • Microsoft.NETCore.DotNetHostPolicy
  • Microsoft.NETCore.Platforms <----- 2016 년 4 월에이 두 가지는
  • Microsoft.NETCore.Runtime <------- NETStandard.Library의 일부입니다.
  • NETStandard.Library
  • 추가 System.*어셈블리

참고 문헌

https://github.com/NuGet/Home/issues/2524 > netstandardapp 대상 프레임 워크 모니 커가 "더 이상 유효하지 않음"을 나타냅니다.

https://github.com/dotnet/cli/issues/2482 > "NetStandardApp을 대상으로하는 프로젝트는 NetCoreApp으로 이식해야합니다. NetStandardApp은 CLI 1.0.0 RC2에서 지원되지 않습니다."라고 설명합니다.

https://www.myget.org/feed/aspnetvnext/package/nuget/NETStandard.Library > 패키지 기록은 2016 년 4 월의 큰 변화를 보여줍니다.

참고 URL : https://stackoverflow.com/questions/36962930/whats-the-difference-between-the-new-netstandardapp-and-netcoreapp-tfms

반응형