做sorry动图的网站,官网网站建设,asp网站建设软件,郑州汉狮做网站费用将 .NET Framework 项目转换为 .NET Standard 项目独立观察员 2020 年 8 月 20 日如今 .NET Core 是未来发展的主流#xff08;至少在 .NET 5 发布之前#xff09;#xff0c;而我们如果要改造一个项目为 .NET Core 项目#xff0c;则它引用的项目应当先改造为 .NET Standa… 将 .NET Framework 项目转换为 .NET Standard 项目独立观察员 2020 年 8 月 20 日如今 .NET Core 是未来发展的主流至少在 .NET 5 发布之前而我们如果要改造一个项目为 .NET Core 项目则它引用的项目应当先改造为 .NET Standard 项目。下表给出了每种平台支持指定的 .NET Standard 版本的最低版本参考 简单说明一下.NET Standard 2.0 支持 .NET Core 2.0 和 .NET Framework 4.6.1最好使用 4.7.2 或更高所以使用这些版本的话就不用进行多平台配置了。.NET Standard 2.1 开始就和 .NET Framework 不兼容了这种情况还是要多平台配置。关于多平台配置后面会提到 言归正传我们如何将 Framework 类库项目转换为 Standard 类库项目呢答案就是使用 dotnet try-convert 工具。安装前先要确保你已经安装了 .NET Core SDK (get it here)然后在任务栏搜索 “cmd”以管理员身份运行 使用如下命令安装或卸载:: 安装
dotnet tool install -g try-convert
:: 卸载
dotnet tool uninstall -g try-convert
我已经安装过了 接下来在项目路径打开 cmd使用如下命令进行转换try-convert转换前 转换后 可以看到已备份了旧的项目文件并修改出了新的项目文件。这时我们点击 VS 的弹框重载项目即可没有打开 VS 则无此操作 由于使用了新的项目文件我们在项目上右键就能看到 “编辑项目文件” 的选项 打开后发现项目类型还是 .NET Framework 4.5.2net452 在项目上右键–属性可以看到目标框架也还是以前的 那么我们接下来就来进行 “多平台配置” 吧。首先在项目文件中将 TargetFramework 改为 TargetFrameworks 加个 “s”然后里面的内容加上 “netstandard2.0” 并与之前的内容以分号隔开修改后如下 然后我们关闭 VS 并重新打开重新加载解决方案再次查看项目属性可以看到目标框架里没有指定特定的内容了生成一下也没什么错误说明配置成功了。 另外新式项目的依赖项组织形式也发生了变化 如果解决方案里有多个项目需要转换也可以定位在解决方案目录然后执行转换命令try-convert已转换的项目会自动跳过剩余项目将自动批量转换 通过命令输出我们还得知了新式的项目类型叫做 “.NET SDK-style project” 哈哈涨姿势了。 如果 .NET Standard 依赖项中出现了黄色三角形 可以看看该项是否需要不需要的可以移除。另外在打开的类文件标签下方可以手动选择当前在什么框架下查看 如果有引用在 .NET Standard 框架下没有可在 “包” 上右键–“管理 NuGet 程序包” 然后搜索并安装 好了大致就是这些了。 参考《从 .NET Framework 移植到 .NET Core 的概述》