.NET Standard - Under the Hood
Why Stack Overflow recommends it
Stack Overflow users link it when explaining how netstandard.dll resolves to real implementations on .NET Framework and why referencing .NET Standard from .NET Framework projects works.
Recommended by 3 people across 3 different months, 2017 to 2018.
What it is
A short 2016 explainer by Immo Landwerth of the .NET team on how the pieces of .NET Standard let assemblies be referenced across .NET platforms. It covers reference assemblies, compile-time redirection and runtime type forwarding, with slides available separately.
What people said
Recommends LxL · 2017-07 · Stack Overflow · on “Referencing between NetStandard and .Net Framework”
According to this page [LINK] you should be able to achieve your purpose because .NET Standard 1.2 support .NET Framework 4.5.1 ( UPDATE : This statement is not 100% correct. Please see the Update section below.) I tried to set up a solution in VS 2017 and set the references as you described. Here is the result. [LINK] and this is the Class1.cs in NetStandard12.CentralLibrary [LINK] The code compiles fine without any errors. Note : your code may fail if the Framework452.Library uses an API that is not supported by .NET Standard 1.2 (e.g Winforms, Win32 API or any Microsoft proprietary library that does not make sense for cross platform). I recommend this youtube playlist on the .NET standard
Recommends desmondgc · 2017-12 · Stack Overflow · on “.Net Standard implementation resolution”
A explanation is provided in the video .NET Standard - Under the Hood [this video] which is referenced toward the end of the .NET Standard FAQ [LINK] . More information is provided in the .NET Standard 2.0 README [LINK] . The answer is actually a combination of both scenarios you imagined - redirection to reference assemblies occurs at compile-time, and type forwarding to implementation assemblies occurs at runtime. See also: The how-dare-you-call-me-an-idiot’s guide to the .NET Standard [LINK]
Recommends David Esteves · 2018-02 · Stack Overflow · on “Visual studio deploys wrong file”
[this video] if you watch this it explains that the issue is that netstandard.dll should be coming from your framework, not bundled into your application
Cites Misza · 2018-07 · Stack Overflow · on “Nuget restore fails (NU1201) for .NET Standard referencing .NET Framework”
@MattWard Why you say I cannot reference this way? It's allowed and supported [this video] Changing target from 4.7 to 4.6.1 (and also to earlier versions) gives no difference. It's only a matter of packages.config vs packages references