目标框架为netcoreapp2.0的.net core 控制台,可以引用.net fx 4.6.1 的类库,而反之.net fx 4.6.1的控制台不能引用netcoreapp2.0的.net core类库,这是为什么呢,按理说他们都实现了.net standard2.0
官方文档中提到.NET Standard 2.0 包含一个 .NET Framework 二进制文件的兼容层,可以显著增加 .NET Standard 库可以引用的库的数量。而初始创建的.net core控制台项目引用的元包是Microsoft.NETCore.App , 它依赖于更小的NETStandard.Library
。所以就是因为这个兼容层让.net core的项目可以引用.net fx,而反之却不行
.net fx 4.6.1的控制台程序可以引用target framework为netstandard2.0
的类库,详见 实际体验 .NET Standard 2.0 的魅力
但是不能引用netcoreapp的类库。如果TFM是netstandard2.0,两种框架的控制台都是能引用的,这个我晓得
@MeetMelody:“netcoreapp2.0的.net core类库”这本身就是问题,既然是类库,为什么target framework用netcoreapp2.0?完全可以改为netstandard2.0
@dudu: 我只是想知道为什么会如此