【问题标题】:NetCore app 3.0 and NetStandard 2.1 compatibility issueNet Core app 3.0 和 Net Standard 2.1 兼容性问题
【发布时间】:2020-09-29 00:14:27
【问题描述】:

我正在通过我的 Jetbrains Rider IDE 中的 netcoreapp3.0 项目引用为 netstandard2.1 目标构建的类库项目,并遇到兼容性错误。我从 netstandard 官方专用文章 (https://docs.microsoft.com/en-us/dotnet/standard/net-standard) 中的 .NET 实现支持表中了解到,它们应该是兼容的。我的理解是否不正确,netstandard 的概念与“构建应与 .NET Framework 和 .NET core 兼容的 .NET 类库的标准”的概念不同吗?

【问题讨论】:

  • 您能否发布确切的错误消息。也可能是c#语言版本不兼容docs.microsoft.com/en-us/dotnet/csharp/language-reference/…
  • IntegrationTests.csproj:[NU1201] UnixUtils 项目与 netcoreapp3.0 (.NETCoreApp,Version=v3.0) 不兼容。 UnixUtils 项目支持:netstandard2.1 (.NETStandard,Version=v2.1)
  • 不存在不兼容问题。您应该记住,长期支持版本是 3.1,而不是 3.0。 3.0 已经不支持了。您不应该将 3.0 用于当前或新的开发。 .NET Core was announced years ago 的支持生命周期,因此知道 3.0 甚至在发布之前只会支持几个月

标签: .net .net-core .net-standard-2.1


【解决方案1】:

您绝对可以从 .NET Core 3.0 项目中引用 .NET Standard 2.1 项目。

我对 Rider 不熟悉,所以请耐心等待,但让我们尝试看看有什么问题:

  • 是否以正确的方向添加了依赖项? IntegrationTests.csproj 中是否有类似的内容,而不是库项目文件中的相反内容?
  <ItemGroup>
    <ProjectReference Include="..\UnixUtils\UnixUtils.csproj" />
  </ItemGroup>
  • 从命令行 (dotnet build IntegrationTests.csproj) 构建 .NET Core 项目时,您是否面临同样的问题?

如果两个问题的答案都是“是”,恐怕我们需要查看.csproj 文件的相关部分才能了解发生了什么。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多