【问题标题】:ASP.NET Core - 2.1 to 2.2 IssueASP.NET Core - 2.1 到 2.2 问题
【发布时间】:2020-04-22 13:49:06
【问题描述】:

Windows 10 上的 Visual Studio 2017 15.9.18

我有一个 ASP.NET Core 项目,我需要将 Target Framework 从 2.1 更新到 2.2 更改目标框架后,我清理了一个重新构建的项目。

我现在收到一个编译错误,说我的项目中的一个程序集使用'Microsoft.AspNetCore.Http.Abstractions,Version=2.1.1.0,它的版本高于引用的程序集' Microsoft.AspNetCore.Http.Abstractions 标识为 'Microsoft.AspNetCore.Http.Abstractions, Version=2.0.1.0

在我的项目依赖项中,我安装了 Microsoft.NETCore.App 2.2.0。我打算更新它,但在包管理器中,更新按钮被禁用,说“由 SDK 隐式引用。要更新包,请更新它所属的 SDK。”可用的版本显示它们最高可达 2.2.8

使用 Nuget 包管理器,我安装了 Microsoft.AspNetCore.Http.Abstractions 2.1.1.0,它似乎在调试中工作,但发布后,我的网站无法加载。

我应该手动更新 Microsoft.NETCore.App 的版本,还是只更新 Microsoft.AspNetCore.Http.Abstractions

我在我的项目文件中添加了以下内容:

<PropertyGroup>
    <TargetFramework>netcoreapp2.2</TargetFramework>
    <RuntimeFrameworkVersion>2.2.0</RuntimeFrameworkVersion>
</PropertyGroup>

我还注意到我的发布配置文件中有一些无效部分:

我还读到了我应该添加的地方: services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2); 但是 SetCompatibilityVersion 没有作为方法出现。

【问题讨论】:

  • 为什么要迁移到 .NET Core 2.2? .NET Core 2.2 已停产。另一方面,.NET Core 2.1 在 LTS 上。所以我建议你继续使用 .NET Core 2.1 或升级到 .NET Core 3.1

标签: asp.net-core visual-studio-2017 nuget-package


【解决方案1】:

我现在不鼓励从 .NET Core 2.1 升级到 .NET Core 2.2。

今天的日期是 2020 年 1 月 4 日,截至 2019 年 12 月 23 日,.NET Core 2.2 处于生命周期结束 (EOL) 阶段

如果此时您打算花时间迁移代码,则应迁移到 .NET Core 版本,该版本将在出现任何损坏或存在任何漏洞时接收补丁。

您可以在此处查看 EOL 日期https://dotnet.microsoft.com/platform/support/policy/dotnet-core

【讨论】:

    猜你喜欢
    • 2019-10-30
    • 2019-06-19
    • 2019-07-17
    • 2019-08-29
    • 1970-01-01
    • 2019-05-11
    • 1970-01-01
    • 2019-05-31
    • 1970-01-01
    相关资源
    最近更新 更多