DRAFT This article contains best guesses... help wanted. Tweet help to @dicshaunary.
Things that have versions
- Runtime. The main ones are .NET Core, .NET Framework, and Mono.
- .NET Core The cross-platform runtime.
- .NET Framework...
- Mono...
- .NET Core Shared Framework (fx) Host. Dunno?!?
- host framework (fx) resolver
- github.com/dotnet/core-setup/tree/release/1.1.0/src/corehost/cli/fxr
- .NET Standard. A set of APIs that runtimes implement.
- Command Line Interface (CLI). Let us run SDK commands from a shell.
- Software Development Kit (SDK). Allows us to build projects.
Versions inside the SDK install
When we install SDK version 1.0.1 we receiving these versions:
.NET Core Runtime 1.0.4 and 1.1.1
.NET Core Shared Framework Host 1.1.0
Command Line Interface 1.0.1
Software Development Kit 1.0.1
.NET Standard ?
Research (unanswered) questions
- Are version 1.1.0 and version 1.1 equivalent?
- How do versions of things that have versions relate to each other?
- What does the .NET Core 1.0.1 SDK install?
- Are
corefx
and ".NET Core Shared Framework Host" synonyms?
Research
When we install the .NET Core SDK 1.0.1 we receive a new listing in Programs and Features: .NET Core SDK 1.0.1 (x64)
. We also receive the following directory structure (some items omitted):
C:\Program Files\dotnet\
host\fxr\1.1.0\
sdk\1.0.1\
shared\Microsoft.NETCore.App\
1.0.4\
1.1.1\
dotnet.exe
host
- contains the "Microsoft .NET Core Shared Framework Host"
- we see its version when we run
dotnet
sdk
- contains what we need to build projects
- dotnet CLI operations calls into this
- try renaming it to
sdk.bak
and running anydotnet command
- we see its version when we run
dotnet --version
ordotnet --info
shared
- contains two versions of the .NET Core runtime:
1.0.4
is the long-term support (LTS);1.1.1
is the current version.
dotnet.exe
- this is the command line interface.
- it forwards its commands to the SDK.