不会生成引用.Net Core 6项目的.Net Standard 2.0项目

biswetbf  于 2022-12-14  发布在  .NET
关注(0)|答案(1)|浏览(150)

我创建了一个.Net Standard 2.0(我也尝试将其作为2.1项目,结果相同)作为.Net 4.7.2项目和.Net Core 6项目之间的桥梁。Standard项目引用了.Net Core 6项目。问题是Standard项目无法生成。出现以下错误:
错误CS 1705标识为“XYZ,版本=1.0.0.0,区域性=中性,PublicKeyToken=null”的程序集“Core6Proj_XYZ”使用了“System.Runtime,版本=6.0.0.0,区域性=中性,PublicKeyToken= b 03 f5 f7 f11 d50 a3 a”,该程序集的版本高于标识为"System.Runtime,版本=4.1.2.0,区域性=中性,公钥令牌= b 03 f5 f7 f11 d50 a3 a '标准2.0项目_ABC
除了实现REST API之外,我所发现的一切都表明,使用.Net Standard作为桥接器/ Package 器是在.Net 4.x应用程序中使用.Net Core 6 DLL的唯一方法。有经验的人能解释一下我所遗漏的内容吗?我是否对它应该如何工作感到困惑?提前感谢你。

hfyxw5xn

hfyxw5xn1#

.NET标准不是这样工作的。
.NET标准,顾名思义,提供了一组标准API,可用于所有支持的运行时/框架版本。您不能在.NET标准中引用.NET Core/FX程序集。
如果您想“桥接”两个具有不同运行时的项目,则需要将共享代码放在另一个.NET标准项目中,并从特定于运行时的项目中引用它。

相关问题