.NET Standard
Introduction
Compilers Languages Runtime components
COMMON INFRASTRUCTURE
.NET today—app models and libraries
Compilers Languages Runtime components
COMMON INFRASTRUCTURE
.NET today—reusing code
Compilers Languages Runtime components
COMMON INFRASTRUCTURE
.NET tomorrow
Compilers Languages Runtime components
COMMON INFRASTRUCTURE
.NET tomorrow—reusing code
.NET Standard is a specification
Represents a set of APIs that all .NET platforms have to implement
Is a type of class library & provided as a NuGet package
What is .NET Standard?
Platform 3Platform 1
Platform 2
PCLs were an after thought, i.e. each platform
could decide which APIs to includes
• No systematic approach to versioning
• Computed intersection profiles
Each PCLs is targeting a specific set of platforms
• Not compatible with newer platforms
• Hard to understand compatibility
relationships
Difference to Portable Class Libraries (PCL)
Intersection Profiles
2.0
1.6
1.3
Higher versions incorporate all APIs from
previous versions.
• Projects targeting version X.Y can
reference libraries & projects
targeting any version between 1.0
and X.Y
Concrete .NET platforms implement a
specific version of .NET Standard
• From that platform you can reference
libraries up to that version
How does versioning work in .NET Standard?
1.0
Demo
Exploring .NET Standard Versions

.NET Standard - Introduction

  • 1.
  • 2.
    Compilers Languages Runtimecomponents COMMON INFRASTRUCTURE .NET today—app models and libraries
  • 3.
    Compilers Languages Runtimecomponents COMMON INFRASTRUCTURE .NET today—reusing code
  • 4.
    Compilers Languages Runtimecomponents COMMON INFRASTRUCTURE .NET tomorrow
  • 5.
    Compilers Languages Runtimecomponents COMMON INFRASTRUCTURE .NET tomorrow—reusing code
  • 6.
    .NET Standard isa specification Represents a set of APIs that all .NET platforms have to implement Is a type of class library & provided as a NuGet package What is .NET Standard?
  • 7.
    Platform 3Platform 1 Platform2 PCLs were an after thought, i.e. each platform could decide which APIs to includes • No systematic approach to versioning • Computed intersection profiles Each PCLs is targeting a specific set of platforms • Not compatible with newer platforms • Hard to understand compatibility relationships Difference to Portable Class Libraries (PCL) Intersection Profiles
  • 8.
    2.0 1.6 1.3 Higher versions incorporateall APIs from previous versions. • Projects targeting version X.Y can reference libraries & projects targeting any version between 1.0 and X.Y Concrete .NET platforms implement a specific version of .NET Standard • From that platform you can reference libraries up to that version How does versioning work in .NET Standard? 1.0
  • 9.