【问题标题】:Is it required to update web apps to target .NET 4.8 when Azure App Services update?Azure App Services 更新时是否需要将 Web 应用程序更新为面向 .NET 4.8?
【发布时间】:2020-06-25 14:33:55
【问题描述】:

这篇文章询问了 Azure 应用服务何时提供 4.8 支持: Azure support for .NET 4.8

一位评论者询问是否也必须更新您的应用,这是一个很好的问题。

Microsoft 电子邮件抨击了所有应用服务客户,因此他们似乎非常重视此更新,但如果需要完整更新,他们并没有留下太多时间(2020 年 7 月 14 日)。

问题是——我们必须更新到 4.8 吗?

【问题讨论】:

  • 重新安装了 4.8 开发包。现在适用于 VS 2017。

标签: azure .net-4.8


【解决方案1】:

简而言之:强制,不;可取的,是的。

假设您的应用已经针对受支持的 .NET 版本(当前 >= 4.5.2),那么将您的应用重新定位到 4.8 不是强制性的。特别是如果您不打算利用任何新功能。见.NET docs:

4.x 版本的 .NET Framework 可用于运行通过该版本为 .NET Framework 4.0 构建的应用程序。例如,.NET Framework 4.7 可用于运行为 .NET Framework 4.0 到 4.7 构建的应用程序。最新版本(.NET Framework 4.8)可用于运行使用从 4.0 开始的所有 .NET Framework 版本构建的应用程序。

至少,您可以在上线之前对在 4.8 上运行的应用运行一些回归测试。需要多少测试才能获得信心,以及破坏更改的机会,很大程度上取决于您当前的目标版本。

然而,理想情况下,如果您能够为 4.8 重新定位、构建和部署,那么编译器甚至可以更早地捕捉到许多意外行为。请注意,有时某些更改需要更改代码,而且可能性在很大程度上取决于您目前的目标。

要了解您可能需要在代码中执行哪些工作:

另外值得注意的是,在没有重定向的情况下在 4.8 上运行现有 4.x 应用程序遇到问题的可能性较小,因为:

.NET Framework 使用古怪的行为来模仿旧的目标版本。该应用程序在较新版本上运行,但就像在旧版本上运行一样。 .NET Framework 版本之间的许多兼容性问题都通过这种古怪的模型得到缓解。

编辑:截至 2020 年 6 月 26 日,我不知道有任何计划在升级日期之前在 4.8 上测试在应用服务中运行的应用,这意味着您只能在本地测试 4.8。

【讨论】:

    【解决方案2】:

    正如本公告中的 Azure 应用服务 blog 所述 - “.NET Framework 4.8 更新是对应用服务的非破坏性就地升级。现有应用程序不需要更新。”

    但是,如果您确实想测试您的应用程序,或者如果您计划将来重新定位您的应用程序以明确需要 .NET Framework 4.8,那么您更欢迎这样做,但这不是必需的。

    根据您的要求,如果可以以 4.6.1 作为目标运行您的应用程序,那么此时您无需采取任何行动。我们的产品工程团队将定期更新此announcement 和博客,以通知您部署进度。

    【讨论】:

      【解决方案3】:

      如果 Visual Studio 2017 更新程序支持 4.8,那就太好了。 4.7.2 是支持的最新版本。微软在盲目地发送大量暗示紧急更新的电子邮件之前,应该保持警惕!

      【讨论】:

      • Visual Studio 2019 支持它。
      猜你喜欢
      • 2020-08-08
      • 1970-01-01
      • 2014-11-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-12
      相关资源
      最近更新 更多