【问题标题】:Project 'ClassLibrary1.csproj' targets 'netcoreapp2.1'. It cannot be referenced by a project that targets '.NETFramework,Version=v4.7.2'项目“ClassLibrary1.csproj”以“netcoreapp2.1”为目标。以 '.NETFramework,Version=v4.7.2' 为目标的项目不能引用它
【发布时间】:2019-04-04 15:08:53
【问题描述】:

我有两个具有以下设置的类库项目:

  • ClassLibrary1 --> 目标框架-->.NET Core 2.1
  • ClassLibrary2 --> 目标框架-->.NET Framework 4.7.2

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

严重性代码描述项目文件行抑制状态 错误项目“..\ClassLibrary1\ClassLibrary1.csproj”的目标是“netcoreapp2.1”。以“.NETFramework,Version=v4.7.2”为目标的项目不能引用它。类库2

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

【问题讨论】:

  • 你可以使用netstandard2.0 作为 TargetFramework 吗?
  • 如果你想创建一个可以被两个运行时引用的库项目,请使用 .NET Standard 2.0
  • .Net Standard 2.0 出现以下错误:项目 ... 与 netstandard2.0 (.NETStandard,Version=v2.0) 不兼容。项目...支持:netcoreapp2.1 (.NETCoreApp,Version=v2.1)

标签: c# .net .net-core-2.0


【解决方案1】:

您无法参考:

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

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

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

请参阅: .NET Standard

【讨论】:

  • 感谢 Szymom 提供详细信息。它帮助我详细了解了这个问题:)。
  • 很好,清晰,简单的解释。谢谢;)
猜你喜欢
  • 2019-12-14
  • 2021-12-05
  • 2022-11-08
  • 1970-01-01
  • 2021-11-25
  • 1970-01-01
  • 2021-05-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多