c# - 将项目从 .NET5 转换为 .NET Framework 4.8
问题描述
长话短说,总结......我开始研究一个解决方案,为该解决方案创建许多项目(如类库)。然后我最终需要使用第三方 SDK 来处理我拥有昂贵许可证的东西。来一探究竟,那个第三方SDK只支持.NET Framework
.
因为我的解决方案基于我.NET 5/Core
的 SDK,.NET Framework
我遇到了一个大问题。它们不能存在于同一环境中并相互引用。所以,继续咬紧牙关,花几个小时将我所有的项目转换成.NET Framework 4.8
一首永无止境的诅咒之歌......
问题
我尝试转换的第一个类库.NET5
恰好.NET 4.8
安装了 Nuget 包。Nuget 是Newtonsoft.Json Version="12.0.3"
(https://www.nuget.org/packages/Newtonsoft.Json)。
在项目文件中更改框架后,VSCode 告诉我找不到 Newtonsoft 命名空间。这让我觉得我安装的 Nuget 与 .NET Framework 4.8 不兼容。
解决方案
.NET 支持跨平台定位,这意味着您可以让您的 SDK 风格的 .NET5 项目同时针对 .NETnet5
和net48
. 将来,如果第三方库目标.NET Core
,那么您可以简单地更改TargetFrameworks
属性。
如果有帮助,这里已经讨论了一个类似的问题https://github.com/dotnet/runtime/discussions/40304 。
推荐阅读
- python - 如何过滤一组(int,str)元组,仅返回第一个元素中具有最小值的元组?
- c++ - 动态内存分配
- javascript - 单击按钮时执行节点命令
- javascript - 如果 ip 或域在 javascript 中获取错误,如何处理
- ruby-on-rails - /home/user/.gem/ruby/2.6.1/gems/puma-3.12.1/lib/puma/binder.rb:273:in `initialize': getaddrinfo: Name or service not known (SocketError)
- python - 如何在python3.7中测量python-asyncio
- android - Android Jetifier 无法将数据绑定生成的支持库转换为 AndroidX
- ibm-cloud-private - 在工作节点上运行的资源
- apache-nifi - Apache NiFi 中是否有内置处理器可以创建启用密码的 SSH 连接?
- jolt - JOLT Shift 转换