You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/core/packages.md
+11-10Lines changed: 11 additions & 10 deletions
Original file line number
Diff line number
Diff line change
@@ -3,6 +3,7 @@ title: Packages, Metapackages and Frameworks
3
3
description: Packages, Metapackages and Frameworks
4
4
keywords: .NET, .NET Core
5
5
author: richlander
6
+
ms.author: mairaw
6
7
manager: wpickett
7
8
ms.date: 06/20/2016
8
9
ms.topic: article
@@ -49,7 +50,7 @@ Packages are referenced in project.json. In the example below, the [System.Runti
49
50
"System.Runtime": "4.1.0"
50
51
},
51
52
"frameworks": {
52
-
"netstandard1.5": {}
53
+
"netstandard1.6": {}
53
54
}
54
55
}
55
56
```
@@ -87,10 +88,10 @@ In the following example, the `NETStandard.Library` meta package is referenced,
87
88
```json
88
89
{
89
90
"dependencies": {
90
-
"NETStandard.Library": "1.5.0"
91
+
"NETStandard.Library": "1.6.0"
91
92
},
92
93
"frameworks": {
93
-
"netstandard1.5": {}
94
+
"netstandard1.6": {}
94
95
}
95
96
}
96
97
```
@@ -147,15 +148,15 @@ The .NET Standard (TFM: `netstandard`) framework represents the APIs defined by
147
148
148
149
The `NETStandard.Library` metapackage targets the `netstandard` framework. The most common way to target `netstandard` is by referencing this metapackage. It describes and provides access to the ~40 .NET libraries and associated APIs that define the .NET Standard Library. You can reference additional packages that target `netstandard` to get access to additional APIs.
149
150
150
-
A given [NETStandard.Library version](versions/index.md) matches the highest `netstandard` version it exposed (via its closure). The framework reference in project.json is used to select the correct assets from the underlying packages. In this case, `netstandard1.5` assets are required, as opposed to `netstandard1.4` or `net46`, for example.
151
+
A given [NETStandard.Library version](versions/index.md) matches the highest `netstandard` version it exposed (via its closure). The framework reference in project.json is used to select the correct assets from the underlying packages. In this case, `netstandard1.6` assets are required, as opposed to `netstandard1.4` or `net46`, for example.
151
152
152
153
```json
153
154
{
154
155
"dependencies": {
155
-
"NETStandard.Library": "1.5.0"
156
+
"NETStandard.Library": "1.6.0"
156
157
},
157
158
"frameworks": {
158
-
"netstandard1.5": {}
159
+
"netstandard1.6": {}
159
160
}
160
161
}
161
162
```
@@ -165,22 +166,22 @@ The framework and metapackage references in project.json do not need to match. F
165
166
```json
166
167
{
167
168
"dependencies": {
168
-
"NETStandard.Library": "1.5.0"
169
+
"NETStandard.Library": "1.6.0"
169
170
},
170
171
"frameworks": {
171
172
"netstandard1.3": {}
172
173
}
173
174
}
174
175
```
175
176
176
-
It may seem strange to target `netstandard1.3` but use the 1.5.0 version of `NETStandard.Library`. It is a valid use-case, since the metapackage maintains support for older `netstandard` versions. It could be the case you've standardized on the 1.5.0 version of the metapackage and use it for all your libraries, which target a variety of `netstandard` versions. With this approach, you only need to restore `NETStandard.Library` 1.5.0 and not earlier versions.
177
+
It may seem strange to target `netstandard1.3` but use the 1.6.0 version of `NETStandard.Library`. It is a valid use-case, since the metapackage maintains support for older `netstandard` versions. It could be the case you've standardized on the 1.6.0 version of the metapackage and use it for all your libraries, which target a variety of `netstandard` versions. With this approach, you only need to restore `NETStandard.Library` 1.6.0 and not earlier versions.
177
178
178
-
The reverse would not be valid: targeting `netstandard1.5` with the 1.3.0 version of `NETStandard.Library`. You cannot target a higher framework with a lower metapackage, since the lower version metapackage will not expose any assets for that higher framework. The [versioning scheme] for metapackages asserts that metapackages match the highest version of the framework they describe. By virtue of the versioning scheme, the first version of `NETStandard.Library` is v1.5.0 given that it contains `netstandard1.5` assets. v1.3.0 is used in the example above, for symmetry with the example above, but does not actually exist.
179
+
The reverse would not be valid: targeting `netstandard1.6` with the 1.3.0 version of `NETStandard.Library`. You cannot target a higher framework with a lower metapackage, since the lower version metapackage will not expose any assets for that higher framework. The [versioning scheme] for metapackages asserts that metapackages match the highest version of the framework they describe. By virtue of the versioning scheme, the first version of `NETStandard.Library` is v1.6.0 given that it contains `netstandard1.6` assets. v1.3.0 is used in the example above, for symmetry with the example above, but does not actually exist.
179
180
180
181
### .NET Core Application
181
182
182
183
The .NET Core Application (TFM: `netcoreapp`) framework represents the packages and associated APIs that come with the .NET Core distribution and the console application model that it provides. .NET Core apps must use this framework, due to targeting the console application model, as should libraries that intended to run only on .NET Core. Using this framework restricts apps and libraries to running only on .NET Core.
183
184
184
185
The `Microsoft.NETCore.App` metapackage targets the `netcoreapp` framework. It provides access to ~60 libraries, ~40 provided by the `NETStandard.Library` package and ~20 more in addition. You can reference additional libraries that target `netcoreapp` or compatible frameworks, such as `netstandard`, to get access to additional APIs.
185
186
186
-
Most of the additional libraries provided by `Microsoft.NETCore.App` also target `netstandard` given that their dependencies are satisfied by other `netstandard` libraries. That means that `netstandard` libraries can also reference those packages as dependencies.
187
+
Most of the additional libraries provided by `Microsoft.NETCore.App` also target `netstandard` given that their dependencies are satisfied by other `netstandard` libraries. That means that `netstandard` libraries can also reference those packages as dependencies.
0 commit comments