项目 'ClassLibrary1.csproj' 目标 'netcoreapp2.1'。它不能被以“.NETFramework,Version=v4.7.2”为目标的项目引用

Project 'ClassLibrary1.csproj' targets 'netcoreapp2.1'. It cannot be referenced by a project that targets '.NETFramework,Version=v4.7.2'

我有两个 class 库项目,设置如下:

现在我在ClassLibrary2项目中引用了ClassLibrary1项目。它成功地完成了。但是在重建项目时出现错误:

Severity Code Description Project File Line Suppression State Error Project '..\ClassLibrary1\ClassLibrary1.csproj' targets 'netcoreapp2.1'. It cannot be referenced by a project that targets '.NETFramework,Version=v4.7.2'. ClassLibrary2

谁能帮我知道这个错误的原因?

您无法引用:

  • .NET Framework 中的 .NET Core 库
  • .NET Core 中的 .NET Framework 库

如果您想在这两个库之间共享代码,您必须使用 .NET Standard 库。

.NET Standard 是一种接口,是您可以调用的 API 的版本列表,.NET Framework 和 .NET Core 实现了该标准

请参考: .NET Standard

我将目标 class 库更改为 netstandard2.0,它通过了构建。