.NET Standard.NET Standard

.NET Standard는 모든 .NET 구현체에서 사용할 수 있는 .NET API의 공식 규격입니다.The .NET Standard is a formal specification of .NET APIs that are intended to be available on all .NET implementations. .NET Standard는 .NET 생태계의 통일성을 높이기 위한 것입니다.The motivation behind the .NET Standard is establishing greater uniformity in the .NET ecosystem. ECMA 335에서는 .NET 구현체의 동작에 관한 통일성을 계속 설정하지만 .NET 라이브러리 구현을 위해 .NET BCL(기본 클래스 라이브러리)에 대한 유사한 사양은 없습니다.ECMA 335 continues to establish uniformity for .NET implementation behavior, but there's no similar spec for the .NET Base Class Libraries (BCL) for .NET library implementations.

.NET Standard를 통해 다음과 같은 주요 시나리오를 사용할 수 있습니다.The .NET Standard enables the following key scenarios:

  • 워크로드에 독립적으로 구현할 모든 .NET 구현체에 대해 통일된 BCL API를 정의할 수 있습니다.Defines uniform set of BCL APIs for all .NET implementations to implement, independent of workload.
  • 개발자가 이와 같은 API를 사용하여 다양한 .NET 구현체에서 사용할 수 있는 이식 가능한 라이브러리를 만들 수 있습니다.Enables developers to produce portable libraries that are usable across .NET implementations, using this same set of APIs.
  • OS API에 한해서, .NET API때문에 공유된 소스의 조건부 컴파일을 줄이거나 제거할 수 있습니다.Reduces or even eliminates conditional compilation of shared source due to .NET APIs, only for OS APIs.

다양한 .NET 구현체는 특정 버전의 .NET Standard를 대상으로 합니다.The various .NET implementations target specific versions of .NET Standard. 각 .NET 구현체 버전은 지원하는 최신 .NET Standard 버전을 보급합니다. 이는 이전 버전도 지원함을 의미합니다.Each .NET implementation version advertises the highest .NET Standard version it supports, a statement that means it also supports previous versions. 예를 들어 .NET Framework 4.6에서는 .NET Standard 1.3을 구현합니다. 즉, .NET Standard 버전 1.0에서 1.3까지에 정의된 모든 API를 표시합니다.For example, the .NET Framework 4.6 implements .NET Standard 1.3, which means that it exposes all APIs defined in .NET Standard versions 1.0 through 1.3. 마찬가지로 .NET Framework 4.6.1에서는 .NET Standard 1.4를 구현하지만 .NET Core 1.0에서는 .NET Standard 1.6을 구현합니다.Similarly, the .NET Framework 4.6.1 implements .NET Standard 1.4, while .NET Core 1.0 implements .NET Standard 1.6.

.NET 구현체 지원.NET implementation support

다음 표에서는 각 .NET Standard 버전을 지원하는 최소 플랫폼 버전을 나열합니다.The following table lists the minimum platform versions that support each .NET Standard version. 즉, 목록에 있는 플랫폼의 차후 버전에서는 해당하는 .NET Standard 버전도 지원합니다.That means that later versions of a listed platform also support the corresponding .NET Standard version. 예를 들어, .NET Core 2.2는 .NET 표준 2.0 및 이전 버전을 지원합니다.For example, .NET Core 2.2 supports .NET Standard 2.0 and earlier.

.NET Standard.NET Standard 1.01.0 1.11.1 1.21.2 1.31.3 1.41.4 1.51.5 1.61.6 2.02.0 2.1 2.1
미리 보기Preview
.NET Core.NET Core 1.01.0 1.01.0 1.01.0 1.01.0 1.01.0 1.01.0 1.01.0 2.02.0 3.03.0
.NET Framework 1.NET Framework 1 4.54.5 4.54.5 4.5.14.5.1 4.64.6 4.6.14.6.1 4.6.1 24.6.1 2 4.6.1 24.6.1 2 4.6.1 24.6.1 2 해당 없음3N/A3
MonoMono 4.64.6 4.64.6 4.64.6 4.64.6 4.64.6 4.64.6 4.64.6 5.45.4 6.46.4
Xamarin.iOSXamarin.iOS 10.010.0 10.010.0 10.010.0 10.010.0 10.010.0 10.010.0 10.010.0 10.1410.14 12.1612.16
Xamarin.MacXamarin.Mac 3.03.0 3.03.0 3.03.0 3.03.0 3.03.0 3.03.0 3.03.0 3.83.8 5.165.16
Xamarin.AndroidXamarin.Android 7.07.0 7.07.0 7.07.0 7.07.0 7.07.0 7.07.0 7.07.0 8.08.0 10.010.0
UWPUniversal Windows Platform 10.010.0 10.010.0 10.010.0 10.010.0 10.010.0 10.0.1629910.0.16299 10.0.1629910.0.16299 10.0.1629910.0.16299 TBDTBD
UnityUnity 2018.12018.1 2018.12018.1 2018.12018.1 2018.12018.1 2018.12018.1 2018.12018.1 2018.12018.1 2018.12018.1 TBDTBD

1 .NET Framework용으로 나열된 버전은 .NET Core 2.0 SDK 이상 버전의 도구에 적용됩니다. 이전 버전에서는 .NET Standard 1.5 이상에서 다른 매핑을 사용했습니다. Visual Studio 2017로 업그레이드할 수 없는 경우 Visual Studio 2015용 .NET Core 도구를 다운로드할 수 있습니다.1 The versions listed for .NET Framework apply to .NET Core 2.0 SDK and later versions of the tooling. Older versions used a different mapping for .NET Standard 1.5 and higher. You can download tooling for .NET Core tools for Visual Studio 2015 if you cannot upgrade to Visual Studio 2017.

2 여기에 나열된 버전은 지정된 .NET Standard 라이브러리를 적용할 수 있는지 여부를 확인하기 위해 NuGet이 사용하는 규칙을 나타냅니다. NuGet에서는 .NET Framework 4.6.1을 .NET Standard 1.5에서 2.0까지 지원하는 것으로 간주하는 반면, .NET Framework 4.6.1에서 해당 버전용으로 빌드된 .NET Standard 라이브러리를 사용하는 데 몇 가지 문제가 있습니다. 이러한 라이브러리를 사용해야 하는 .NET Framework 프로젝트의 경우 .NET Framework 4.7.2 이상을 대상으로 하려면 프로젝트를 업그레이드하는 것이 좋습니다.2 The versions listed here represent the rules that NuGet uses to determine whether a given .NET Standard library is applicable. While NuGet considers .NET Framework 4.6.1 as supporting .NET Standard 1.5 through 2.0, there are several issues with consuming .NET Standard libraries that were built for those versions from .NET Framework 4.6.1 projects. For .NET Framework projects that need to use such libraries, we recommend that you upgrade the project to target .NET Framework 4.7.2 or higher.

3 .NET Framework는 .NET Standard 2.1 이상 버전을 지원하지 않습니다. 자세한 내용은 .NET Standard 2.1의 공지를 참조하세요.3 .NET Framework won't support .NET Standard 2.1 or later versions. For more details, see the announcement of .NET Standard 2.1.

  • 열은 .NET 표준 버전을 나타냅니다.The columns represent .NET Standard versions. 각 헤더 셀은 .NET 표준의 해당 버전에 추가된 API를 보여 주는 문서의 링크입니다.Each header cell is a link to a document that shows which APIs got added in that version of .NET Standard.
  • 행은 다양한 .NET 구현을 나타냅니다.The rows represent the different .NET implementations.
  • 각 셀의 버전 번호는 해당 .NET 표준 버전을 대상으로 지정하는 데 필요한 구현의 최소 버전을 나타냅니다.The version number in each cell indicates the minimum version of the implementation you'll need in order to target that .NET Standard version.
  • 대화형 테이블은 .NET Standard 버전을 참조하세요.For an interactive table, see .NET Standard versions.

대상으로 지정할 수 있는 가장 높은 버전의 .NET Standard를 찾으려면 다음 단계를 수행합니다.To find the highest version of .NET Standard that you can target, do the following steps:

  1. 실행할 .NET 구현체를 나타내는 행을 찾습니다.Find the row that indicates the .NET implementation you want to run on.
  2. 해당 행의 오른쪽에서 왼쪽으로 사용 중인 버전을 나타내는 열을 찾습니다.Find the column in that row that indicates your version starting from right to left.
  3. 열 헤더는 대상에서 지원하는 .NET Standard 버전을 나타냅니다.The column header indicates the .NET Standard version that your target supports. 더 낮은 .NET Standard 버전을 대상으로 할 수도 있습니다.You may also target any lower .NET Standard version. 더 높은 .NET Standard 버전은 구현체도 지원합니다.Higher .NET Standard versions will also support your implementation.
  4. 대상으로 지정할 각 플랫폼에 대해 이 프로세스를 반복합니다.Repeat this process for each platform you want to target. 대상 플랫폼이 두 개 이상 있으면 더 낮은 버전을 선택해야 합니다.If you have more than one target platform, you should pick the smaller version among them. 예를 들어 .NET Framework 4.5 및 .NET Core 1.0에서 실행하려는 경우 사용할 수 있는 가장 높은 .NET 표준 버전은 .NET 표준 1.1입니다.For example, if you want to run on .NET Framework 4.5 and .NET Core 1.0, the highest .NET Standard version you can use is .NET Standard 1.1.

대상으로 지정할 .NET 표준 버전Which .NET Standard version to target

.NET Standard 버전을 선택할 때는 다음과 같이 상충되는 요소를 고려해야 합니다.When choosing a .NET Standard version, you should consider this trade-off:

  • 버전이 높을수록 더 많은 API를 사용할 수 있습니다.The higher the version, the more APIs are available to you.
  • 버전이 낮을수록 더 많은 플랫폼에서 이 버전을 구현합니다.The lower the version, the more platforms implement it.

일반적으로 가능한 .NET 표준의 가장 낮은 버전을 대상으로 지정하는 것이 좋습니다.In general, we recommend you to target the lowest version of .NET Standard possible. 따라서 대상으로 지정할 수 있는 가장 높은 .NET 표준 버전을 찾은 후 다음 단계에 따릅니다.So, after you find the highest .NET Standard version you can target, follow these steps:

  1. 다음으로 낮은 버전의 .NET 표준을 대상으로 지정하고 프로젝트를 빌드합니다.Target the next lower version of .NET Standard and build your project.
  2. 프로젝트가 성공적으로 빌드되면 1단계를 반복합니다.If your project builds successfully, repeat step 1. 그렇지 않으면 다음으로 높은 버전으로 대상을 변경합니다. 이 버전을 사용해야 합니다.Otherwise, retarget to the next higher version and that's the version you should use.

그러나 하위 .NET Standard 버전을 대상으로 지정하면 많은 지원 종속성이 도입됩니다.However, targeting lower .NET Standard versions introduces a number of support dependencies. 프로젝트에서 .NET 1.x를 대상으로 지정하는 경우에는 .NET Standard 2.0 ‘또한 대상으로 지정’하는 것이 좋습니다. If your project targets .NET Standard 1.x, we recommend that you also target .NET Standard 2.0. 이렇게 하면 .NET Standard 2.0 호환 프레임워크에서 실행되는 라이브러리의 사용자에 대한 종속성 그래프가 단순화되고 다운로드해야 하는 패키지 수가 감소합니다.This simplifies the dependency graph for users of your library that run on .NET Standard 2.0 compatible frameworks, and it reduces the number of packages they need to download.

.NET 표준 버전 관리 규칙.NET Standard versioning rules

두 가지 기본 버전 관리 규칙이 있습니다.There are two primary versioning rules:

  • 추가: .NET 표준 버전은 논리적으로 동심원입니다. 더 높은 버전이 이전 버전의 모든 API를 통합합니다.Additive: .NET Standard versions are logically concentric circles: higher versions incorporate all APIs from previous versions. 버전 간에 큰 차이는 없습니다.There are no breaking changes between versions.
  • 변경할 수 없음: 제공되고 나면 .NET 표준 버전은 고정됩니다.Immutable: Once shipped, .NET Standard versions are frozen. 새 API는 먼저 특정 .NET 구현(예: .NET Core)에서 제공됩니다.New APIs first become available in specific .NET implementations, such as .NET Core. .NET Standard 심사 위원회에서 새 API가 모든 곳에서 사용 가능하다고 판단하면 새 .NET Standard 버전에 추가됩니다.If the .NET Standard review board believes the new APIs should be available for all .NET implementations, they're added in a new .NET Standard version.

규격Specification

.NET Standard 규격은 표준화된 API의 집합입니다.The .NET Standard specification is a standardized set of APIs. 이 규격은 .NET을 구현한 사람, 특히 Microsoft(.NET Framework, .NET Core, Mono 포함)와 Unity에서 유지 관리합니다.The specification is maintained by .NET implementors, specifically Microsoft (includes .NET Framework, .NET Core, and Mono) and Unity. 공개 피드백 절차는 GitHub을 통해 새로운 .NET Standard 버전을 만드는 과정의 일부입니다.A public feedback process is used as part of establishing new .NET Standard versions through GitHub.

공식 아티팩트Official artifacts

공식 규격은 표준의 일부인 API를 정의하는 .cs 파일 집합입니다.The official specification is a set of .cs files that define the APIs that are part of the standard. dotnet/standard repository(dotnet/표준 리포지토리)의 ref directory(ref 디렉터리)는 .NET Standard API를 정의합니다.The ref directory in the dotnet/standard repository defines the .NET Standard APIs.

NETStandard.Library 메타패키지(소스)는 하나 이상의 .NET Standard 버전을 부분적으로 정의하는 라이브러리 집합에 대해 설명합니다.The NETStandard.Library metapackage (source) describes the set of libraries that define (in part) one or more .NET Standard versions.

System.Runtime 등의 지정된 구성 요소는 다음에 대해 설명합니다.A given component, like System.Runtime, describes:

  • .NET 표준의 일부(해당 범위만)Part of .NET Standard (just its scope).
  • 해당 범위에 대한 .NET 표준의 여러 버전Multiple versions of .NET Standard, for that scope.

보다 편리하게 읽을 수 있고 특정 개발자 시나리오(예: 컴파일러 사용)를 지원할 수 있도록 파생 아티팩트가 제공됩니다.Derivative artifacts are provided to enable more convenient reading and to enable certain developer scenarios (for example, using a compiler).

패키지 표현Package representation

.NET Standard 참조 어셈블리의 기본 배포 수단은 NuGet 패키지입니다.The primary distribution vehicle for the .NET Standard reference assemblies is NuGet packages. 구현체는 각 .NET 구현에 적절한 다양한 방법으로 제공됩니다.Implementations are delivered in a variety of ways, appropriate for each .NET implementation.

NuGet 패키지는 하나 이상의 프레임워크를 대상으로 합니다.NuGet packages target one or more frameworks. .NET 표준 패키지는 “.NET 표준” 프레임워크를 대상으로 합니다.The .NET Standard packages target the ".NET Standard" framework. netstandard 압축 TFM(예: netstandard1.4)을 사용하여 .NET Standard 프레임워크를 대상으로 지정할 수 있습니다.You can target the .NET Standard framework using the netstandard compact TFM (for example, netstandard1.4). 여러 런타임에서 실행되도록 만들어진 라이브러리는 이 프레임워크를 대상으로 하며,Libraries that are intended to run on multiple runtimes should target this framework. 광범위한 API의 경우 사용 가능한 API 수가 .NET Standard 1.6과 2.0 간에 세 배 이상 증가하므로 netstandard2.0을 대상으로 지정합니다.For the broadest set of APIs, target netstandard2.0 since the number of available APIs more than doubled between .NET Standard 1.6 and 2.0.

NETStandard.Library 메타패키지는 .NET Standard를 정의하는 NuGet 패키지의 전체 집합을 참조합니다.The NETStandard.Library metapackage references the complete set of NuGet packages that define .NET Standard. netstandard를 대상으로 지정하는 가장 일반적인 방법은 이 메타패키지를 참조하는 것입니다.The most common way to target netstandard is by referencing this metapackage. 이 메타패키지는 최대 40개의 .NET 라이브러리 및 .NET 표준을 정의하는 관련 API를 설명하고 액세스할 수 있도록 합니다.It describes and provides access to the ~40 .NET libraries and associated APIs that define .NET Standard. 추가 API에 액세스하기 위해 netstandard를 대상으로 하는 추가 패키지를 참조할 수 있습니다.You can reference additional packages that target netstandard to get access to additional APIs.

버전 관리Versioning

사양은 단수형이 아니라 점진적으로 증가하고 선형으로 버전이 관리되는 API 집합입니다.The specification is not singular, but an incrementally growing and linearly versioned set of APIs. 첫 번째 버전의 표준에서는 API의 기준 집합을 설정합니다.The first version of the standard establishes a baseline set of APIs. 이후 버전에서는 API를 추가하고 이전 버전에서 정의한 API를 상속받습니다.Subsequent versions add APIs and inherit APIs defined by previous versions. 표준에서 API 제거와 관련해서 설정된 프로비전은 없습니다.There is no established provision for removing APIs from the standard.

.NET Standard는 어느 하나의 .NET 구현에 특정되지 않고, 이러한 런타임 중 하나의 버전 관리 체계와 일치하지도 않습니다..NET Standard is not specific to any one .NET implementation, nor does it match the versioning scheme of any of those runtimes.

구현(예: .NET Framework, .NET Core, Mono) 중 하나에 추가된 API는 특히 기본적인 특성으로 간주되는 경우 사양에 추가할 후보로 고려될 수 있습니다.APIs added to any of the implementations (such as, .NET Framework, .NET Core and Mono) can be considered as candidates to add to the specification, particularly if they are thought to be fundamental in nature. .NET 구현 릴리스에 따라 새 .NET Standard 버전이 생성되므로 .NET Standard PCL에서 새 API를 대상으로 지정할 수 있습니다.New versions of .NET Standard are created based on .NET implementation releases, enabling you to target new APIs from a .NET Standard PCL. 버전 관리 메커니즘에 대해서는 .NET Core 버전 관리에서 자세히 설명합니다.The versioning mechanics are described in more detail in .NET Core Versioning.

.NET 표준 버전 관리는 사용에 중요합니다..NET Standard versioning is important for usage. .NET 표준 버전이 지정된 경우 동일한 버전이나 하위 버전을 대상으로 하는 라이브러리를 사용할 수 있습니다.Given a .NET Standard version, you can use libraries that target that same or lower version. 다음 방법에서는 .NET 표준 대상 지정과 관련된 .NET 표준 PCL 사용 워크플로에 대해 설명합니다.The following approach describes the workflow for using .NET Standard PCLs, specific to .NET Standard targeting.

  • PCL에 사용할 .NET 표준 버전을 선택합니다.Select a .NET Standard version to use for your PCL.
  • 동일한 .NET 표준 버전이나 하위 버전에 종속된 라이브러리를 사용합니다.Use libraries that depend on the same .NET Standard version or lower.
  • 상위 .NET 표준 버전에 종속된 라이브러리가 있을 경우 동일한 버전을 채택하거나 해당 라이브러리를 사용하지 않도록 결정해야 합니다.If you find a library that depends on a higher .NET Standard version, you either need to adopt that same version or decide not to use that library.

.NET 표준을 대상으로 지정Targeting .NET Standard

netstandard 프레임워크와 NETStandard.Library 메타패키지의 조합을 사용하여 .NET 표준 라이브러리를 빌드할 수 있습니다.You can build .NET Standard Libraries using a combination of the netstandard framework and the NETStandard.Library metapackage. .NET Core 도구를 사용하여 .NET 표준을 대상으로 지정하는 예를 확인할 수 있습니다.You can see examples of targeting the .NET Standard with .NET Core tools.

.NET Framework 호환 모드.NET Framework compatibility mode

.NET Standard 2.0부터 .NET Framework 호환성 모드가 도입되었습니다.Starting with .NET Standard 2.0, the .NET Framework compatibility mode was introduced. 이 호환 모드를 사용하면 .NET Standard 프로젝트가 .NET Standard에 컴파일된 것처럼 .NET Framework 라이브러리를 참조할 수 있습니다.This compatibility mode allows .NET Standard projects to reference .NET Framework libraries as if they were compiled for .NET Standard. .NET Framework 라이브러리를 참조하는 작업은 라이브러리가 WPF(Windows Presentation Foundation) API를 사용하는 것처럼 일부 프로젝트에서 작동하지 않습니다.Referencing .NET Framework libraries doesn't work for all projects, such as libraries that use Windows Presentation Foundation (WPF) APIs.

자세한 내용은 .NET Framework 호환 모드를 참조하세요.For more information, see .NET Framework compatibility mode.

.NET Standard 라이브러리 및 Visual Studio.NET Standard libraries and Visual Studio

Visual Studio에서 .NET Standard 라이브러리를 빌드하기 위해 Windows에 Visual Studio 2017 버전 15.3 이상이 설치되어 있거나 macOS에 Mac용 Visual Studio 버전 7.1 이상이 설치되어 있는지 확인합니다.In order to build .NET Standard libraries in Visual Studio, make sure you have Visual Studio 2017 version 15.3 or later installed on Windows, or Visual Studio for Mac version 7.1 or later installed on macOS.

프로젝트에서 .NET Standard 2.0 라이브러리를 사용해야 하는 경우 Visual Studio 2015에서 수행할 수도 있습니다.If you only need to consume .NET Standard 2.0 libraries in your projects, you can also do that in Visual Studio 2015. 그러나 NuGet 클라이언트 3.6 이상을 설치해야 합니다.However, you need NuGet client 3.6 or higher installed. NuGet 다운로드 페이지에서 Visual Studio 2015에 대한 NuGet 클라이언트를 다운로드할 수 있습니다.You can download the NuGet client for Visual Studio 2015 from the NuGet downloads page.

이식 가능한 클래스 라이브러리와 비교Comparison to Portable Class Libraries

.NET Standard는 PCL(이식 가능한 클래스 라이브러리)을 대체합니다..NET Standard is the replacement for Portable Class Libraries (PCL). .NET Standard는 표준 BCL을 조정하고 그 결과로 .NET 구현 간에 균일성을 높여 이식 가능한 라이브러리를 만드는 환경을 향상합니다.The .NET Standard improves on the experience of creating portable libraries by curating a standard BCL and establishing greater uniformity across .NET implementations as a result. .NET 표준을 대상으로 하는 라이브러리는 PCL 또는 “.NET 표준 기반 PCL”입니다.A library that targets .NET Standard is a PCL or a ".NET Standard-based PCL". 기존 PCL은 "프로필 기반 PCL"입니다.Existing PCLs are "profile-based PCLs".

.NET 표준 및 PCL 프로필은 비슷한 용도로 생성되었지만 주요 차이점도 있습니다..NET Standard and PCL profiles were created for similar purposes but also differ in key ways.

유사점:Similarities:

  • 이진 코드 공유에 사용할 수 있는 API를 정의합니다.Define APIs that can be used for binary code sharing.

차이점:Differences:

  • .NET 표준은 조정된 API 집합이지만, PCL 프로필은 기존 플랫폼의 교차 부분으로 정의됩니다..NET Standard is a curated set of APIs, while PCL profiles are defined by intersections of existing platforms.
  • .NET 표준 버전은 선형으로 관리되지만, PCL 프로필 버전은 선형으로 관리되지 않습니다..NET Standard linearly versions, while PCL profiles do not.
  • PCL 프로필은 Microsoft 플랫폼을 나타내지만 .NET Standard는 플랫폼 중립적입니다.PCL profiles represents Microsoft platforms while the .NET Standard is platform-agnostic.

PCL 호환성PCL compatibility

.NET 표준은 PCL 프로필의 하위 집합과 호환됩니다..NET Standard is compatible with a subset of PCL profiles. .NET 표준 1.0, 1.1 및 1.2는 각각 PCL 프로필 집합과 겹칩니다..NET Standard 1.0, 1.1 and 1.2 each overlap with a set of PCL profiles. 이러한 중첩은 다음 두 가지 이유로 생성되었습니다.This overlap was created for two reasons:

  • .NET 표준 기반 PCL이 프로필 기반 PCL을 참조할 수 있습니다.Enable .NET Standard-based PCLs to reference profile-based PCLs.
  • 프로필 기반 PCL을 .NET 표준 기반 PCL로 패키지할 수 있습니다.Enable profile-based PCLs to be packaged as .NET Standard-based PCLs.

프로필 기반 PCL 호환성은 Microsoft.NETCore.Portable.Compatibility NuGet 패키지에서 제공됩니다.Profile-based PCL compatibility is provided by the Microsoft.NETCore.Portable.Compatibility NuGet package. 이러한 종속성은 프로필 기반 PCL을 포함하는 NuGet 패키지를 참조할 때 필요합니다.This dependency is required when referencing NuGet packages that contain profile-based PCLs.

netstandard로 패키지된 프로필 기반 PCL은 일반적으로 패키지된 프로필 기반 PCL보다 더 쉽게 이용할 수 있습니다.Profile-based PCLs packaged as netstandard are easier to consume than typically packaged profile-based PCLs. netstandard 패키징은 기존 사용자와 호환됩니다.netstandard packaging is compatible with existing users.

.NET 표준과 호환되는 PCL 프로필 집합을 확인할 수 있습니다.You can see the set of PCL profiles that are compatible with the .NET Standard:

PCL 프로필PCL Profile .NET Standard.NET Standard PCL 플랫폼PCL Platforms
Profile7Profile7 1.11.1 .NET Framework 4.5, Windows 8.NET Framework 4.5, Windows 8
Profile31Profile31 1.01.0 Windows 8.1, Windows Phone Silverlight 8.1Windows 8.1, Windows Phone Silverlight 8.1
Profile32Profile32 1.21.2 Windows 8.1, Windows Phone 8.1Windows 8.1, Windows Phone 8.1
Profile44Profile44 1.21.2 .NET Framework 4.5.1, Windows 8.1.NET Framework 4.5.1, Windows 8.1
Profile49Profile49 1.01.0 .NET Framework 4.5, Windows Phone Silverlight 8.NET Framework 4.5, Windows Phone Silverlight 8
Profile78Profile78 1.01.0 .NET Framework 4.5, Windows 8, Windows Phone Silverlight 8.NET Framework 4.5, Windows 8, Windows Phone Silverlight 8
Profile84Profile84 1.01.0 Windows Phone 8.1, Windows Phone Silverlight 8.1Windows Phone 8.1, Windows Phone Silverlight 8.1
Profile111Profile111 1.11.1 .NET Framework 4.5, Windows 8, Windows Phone 8.1.NET Framework 4.5, Windows 8, Windows Phone 8.1
Profile151Profile151 1.21.2 .NET Framework 4.5.1, Windows 8.1, Windows Phone 8.1.NET Framework 4.5.1, Windows 8.1, Windows Phone 8.1
Profile157Profile157 1.01.0 Windows 8.1, Windows Phone 8.1, Windows Phone Silverlight 8.1Windows 8.1, Windows Phone 8.1, Windows Phone Silverlight 8.1
Profile259Profile259 1.01.0 .NET Framework 4.5, Windows 8, Windows Phone 8.1, Windows Phone Silverlight 8.NET Framework 4.5, Windows 8, Windows Phone 8.1, Windows Phone Silverlight 8

참고 항목See also