开发工具:
VS 2017 15.6/15.7
现象:
在创建 NETSTANDARD 项目时,没有选择 dotnet 版本的项(如 net framework 4.6.1、net core 2.0 等),只有一个默认排序。
创建后的项目,查看netstandard的依赖,发现是 “Microsoft.NETCore.Platforms(1.1.0)”。
但,如果直接创建netcore项目,一样的没有 dotnet 版本的选择项,而 SDK 依赖项却是 2.0(“Microsoft.NETCore.Platforms(2.0.0)”)。
诊断:
检查系统,net core 2.1 都已经安装了。
安装 net framework 4.6.1 /4.7,报告已经安装了更高版本。
谢谢!
之所以叫 .net standard ,就是因为它与具体的 .net 实现没有关系,所以创建 .net standard 项目时无需关心 .net 实现的版本
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
</PropertyGroup>
</Project>
netstandard2.0 的类库项目既可以被 .net framework 项目调用,也可以被 .net core 项目调用
相关链接: