首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

了解ASP.NET核心补丁版本前滚

ASP.NET核心补丁版本前滚是指在ASP.NET核心应用程序中,将已安装的补丁版本回滚到较早的版本。这种操作通常是为了解决某个补丁版本引入的问题或者不兼容性。

ASP.NET核心补丁版本前滚的步骤如下:

  1. 确定要回滚的补丁版本:首先,需要确定当前安装的ASP.NET核心补丁版本以及要回滚到的目标版本。可以通过查看操作系统的更新历史记录或者ASP.NET核心的更新日志来获取这些信息。
  2. 卸载当前补丁版本:在控制面板的程序和功能中,找到当前安装的ASP.NET核心补丁版本,并选择卸载。按照提示完成卸载过程。
  3. 下载目标版本的补丁:在腾讯云的官方网站或者其他可信赖的来源上,下载目标版本的ASP.NET核心补丁。
  4. 安装目标版本的补丁:运行下载的补丁安装程序,按照提示完成安装过程。确保选择正确的目标版本,并遵循安装程序的指导。
  5. 测试应用程序:在完成补丁版本前滚后,重新启动ASP.NET核心应用程序,并进行全面的功能和性能测试,以确保应用程序在新的补丁版本下正常运行。

ASP.NET核心补丁版本前滚的优势是可以解决补丁版本引入的问题或者不兼容性,恢复应用程序的正常运行。它可以帮助开发人员和系统管理员快速回退到之前的稳定版本,以减少潜在的风险和影响。

ASP.NET核心补丁版本前滚的应用场景包括但不限于以下几种情况:

  • 当某个补丁版本引入了严重的问题,导致应用程序无法正常运行时,可以通过前滚操作恢复到之前的稳定版本。
  • 当某个补丁版本与其他组件或库存在不兼容性时,可以通过前滚操作回退到与之前兼容的版本。
  • 当应用程序在新的补丁版本下出现性能下降或者功能异常时,可以通过前滚操作恢复到之前的版本。

腾讯云提供了一系列与ASP.NET核心相关的产品,包括但不限于:

  • 云服务器(CVM):提供可扩展的虚拟服务器,可用于部署ASP.NET核心应用程序。产品介绍链接
  • 云数据库SQL Server版(CDB):提供高性能、可扩展的关系型数据库服务,可用于存储ASP.NET核心应用程序的数据。产品介绍链接
  • 云监控(Cloud Monitor):提供全面的监控和告警功能,可用于监控ASP.NET核心应用程序的性能和可用性。产品介绍链接

请注意,以上产品仅作为示例,具体的选择应根据实际需求和情况进行。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

global.json 概述

该global.json文件允许您定义.NET SDK版本,当您运行.NET CLI命令时使用。选择 .NET SDK 与指定项目目标运行时无关。.NET SDK 版本指示使用的 .NET CLI 版本。 一般情况下,您希望使用最新版本的 SDK 工具,因此不需要global.json文件。在一些高级场景中,您可能希望控制 SDK 工具的版本,本文将解释如何做到这一点。 有关改为指定运行时的更多信息,请参阅目标框架。 .NET SDK在当前工作目录(不一定与项目目录相同)或其父目录之一中查找global.json文件。 global.json 模式 软件开发工具包 类型: object 指定有关要选择的 .NET SDK 的信息。 版本 类型: string 要使用的 .NET SDK 的版本。 这个领域: 不支持通配符;也就是说,您必须指定完整的版本号。 不支持版本范围。 允许预发行 类型: boolean 从以下版本可用:.NET Core 3.0 SDK。 指示 SDK 解析器在选择要使用的 SDK 版本时是否应考虑预发布版本。 如果未明确设置此值,则默认值取决于您是否从 Visual Studio 运行: 如果您不在Visual Studio 中,则默认值为true. 如果您在 Visual Studio 中,它会使用请求的预发布状态。也就是说,如果您使用的是 Visual Studio 的预览版,或者您设置了使用 .NET SDK 的预览选项(在工具>选项>环境>预览功能下),则默认值为true。否则,默认值为false。 前滚 类型: string 从以下版本可用:.NET Core 3.0 SDK。 选择 SDK 版本时使用的前滚策略,作为缺少特定 SDK 版本时的回退或作为使用更高版本的指令。一个版本必须与指定rollForward值,除非你将其设置为latestMajor。默认前滚行为由匹配规则决定。 要了解可用的策略及其行为,请考虑以下格式的 SDK 版本定义x.y.znn: x 是主要版本。 y 是次要版本。 z 是特征带。 nn 是补丁版本。 下表显示了rollForward键的可能值: 表格1 价值 行为 patch 使用指定的版本。 如果未找到,则前滚到最新的补丁级别。 如果找不到,则失败。 此值是早期版本的 SDK 的旧行为。 feature 对指定的主要、次要和功能带使用最新的补丁级别。 如果未找到,则前滚到同一大调/小调中的下一个更高的功能带,并使用该功能带的最新补丁级别。 如果找不到,则失败。 minor 对指定的主要、次要和功能带使用最新的补丁级别。 如果未找到,则前滚到同一主要/次要版本中的下一个更高的功能带,并使用该功能带的最新补丁级别。 如果未找到,则前滚到同一大调内的下一个更高的小调和功能带,并使用该功能带的最新补丁级别。 如果找不到,则失败。 major 对指定的主要、次要和功能带使用最新的补丁级别。 如果未找到,则前滚到同一主要/次要版本中的下一个更高的功能带,并使用该功能带的最新补丁级别。 如果未找到,则前滚到同一大调内的下一个更高的小调和功能带,并使用该功能带的最新补丁级别。 如果未找到,则前滚到下一个更高的主要、次要和功能带,并使用该功能带的最新补丁级别。 如果找不到,则失败。 latestPatch 使用最新安装的补丁级别,该补丁级别与请求的主要、次要和功能带与补丁级别相匹配,并且大于或等于指定的值。 如果找不到,则失败。 latestFeature 使用与请求的主要和次要功能区和补丁程序级别大于或等于指定值相匹配的最高已安装功能区和补丁程序级别。 如果找不到,则失败。 latestMinor 使用与请求的主版本相匹配的最高安装次版本、功能区域和补丁级别,并且次版本、功能区域和补丁级别大于或等于指定的值。 如果找不到,则失败。 latestMajor 使用版本高于或等于指定值的最高安装 .NET SDK。 如果找不到,则失败。 disable 不向前滚动。需要完全匹配。 msbuild-sdks 类型: object 让您可以在一个地方而不是在每个单独的项目中控制项目 SDK 版本。有关更多信息,请参阅如何解决项目 SDK。 例子 以下示例显示了如何不使用预发布版本: JSON 复制 { "sdk": { "allowPrerelease": false } } 以下示例显示如何使用安装的高于或等于指定版本的最高版本。显示的 JSON 不允许早于 2.2.200 的任何 SDK 版本,并允许 2.2.200 或任何更高版本,包括 3.0.xxx 和 3.1.xxx。 JSON 复制 { "sdk": { "version": "2.2.200", "rollForward": "lates

01

.NET 环境变量

在本文中,您将了解 .NET SDK、.NET CLI 和 .NET 运行时使用的环境变量。某些环境变量由 .NET 运行时使用,而其他环境变量仅由 .NET SDK 和 .NET CLI 使用。一些环境变量被所有人使用。 .NET 运行时环境变量 DOTNET_SYSTEM_NET_HTTP_* 有几个全局 HTTP 环境变量设置: DOTNET_SYSTEM_NET_HTTP_ENABLEACTIVITYPROPAGATION 指示是否为全局 HTTP 设置启用诊断处理程序的活动传播。 DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_HTTP2SUPPORT 设置为falseor 时0,禁用 HTTP/2 支持,默认情况下启用。 DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_HTTP3SUPPORT 设置为true或 时1,启用 HTTP/3 支持,默认情况下禁用。 DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_HTTP2FLOWCONTROL_DISABLEDYNAMICWINDOWSIZING 当设置为falseor 时0,覆盖默认值并禁用 HTTP/2 动态窗口缩放算法。 DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_FLOWCONTROL_MAXSTREAMWINDOWSIZE 默认为 16 MB。覆盖时,HTTP/2 流接收窗口的最大大小不能小于 65,535。 DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_FLOWCONTROL_STREAMWINDOWSCALETHRESHOLDMULTIPLIER 默认为 1.0。当被覆盖时,更高的值会导致更短的窗口但下载速度更慢。不能小于0。 DOTNET_SYSTEM_GLOBALIZATION_* DOTNET_SYSTEM_GLOBALIZATION_INVARIANT:请参阅设置不变模式。 DOTNET_SYSTEM_GLOBALIZATION_PREDEFINED_CULTURES_ONLY: 指定是否只加载预定义的文化。 DOTNET_SYSTEM_GLOBALIZATION_APPLOCALICU:指示是否使用应用程序本地Unicode 国际组件(ICU)。有关更多信息,请参阅App-local ICU。 设置不变模式 应用程序可以通过以下任何一种方式启用不变模式: 在项目文件中: XML 复制 <PropertyGroup> <InvariantGlobalization>true</InvariantGlobalization> </PropertyGroup> 在runtimeconfig.json文件中: JSON 复制 { "runtimeOptions": { "configProperties": { "System.Globalization.Invariant": true } } } 通过将环境变量值设置DOTNET_SYSTEM_GLOBALIZATION_INVARIANT为true或1。 重要的 在项目文件或runtimeconfig.json 中设置的值比环境变量具有更高的优先级。 有关详细信息,请参阅.NET 全球化不变模式。 DOTNET_SYSTEM_GLOBALIZATION_USENLS 这仅适用于 Windows。要使全球化使用国家语言支持 (NLS),请将其设置DOTNET_SYSTEM_GLOBALIZATION_USENLS为true或1。DOTNET_SYSTEM_GLOBALIZATION_USENLS要不使用它,请设置为false或0。 DOTNET_SYSTEM_NET_SOCKETS_* 本节重点介绍两个System.Net.Sockets环境变量: DOTNET_SYSTEM_NET_SOCKETS_INLINE_COMPLETIONS DOTNET_SYSTEM_NET_SOCKETS_THREAD_COUNT 套接字延续从事件线程分派到System.Threading.ThreadPool。这避免了阻塞事件处理的延续。要允许继续直接在事件线程上运行,请设置DOTNET_SYSTEM_NET_SOCKETS_INLINE_COMPLETIONS为1. 默认情况下它是禁用的。 笔记 如果有昂贵的工作最终会占用 IO 线程的时间超过所需时间,则此设置会使性能变差。测试以确保此设置有助于提高性能。 使用 TechEmpower 基准测试,在非常高的负载下生成大量小型套接字读取和写入,单个套接字引擎能够

04

.NET Glossary

本词汇表的主要目标是阐明 .NET 文档中经常出现的选定术语和首字母缩略词的含义。 奥特 提前编译器。 与JIT类似,此编译器还将IL转换为机器代码。与 JIT 编译相反,AOT 编译发生在应用程序执行之前,并且通常在不同的机器上执行。因为 AOT 工具链不在运行时编译,所以它们不必最小化编译时间。这意味着他们可以花更多时间进行优化。由于 AOT 的上下文是整个应用程序,因此 AOT 编译器还进行跨模块链接和全程序分析,这意味着遵循所有引用并生成单个可执行文件。 请参阅CoreRT和.NET Native。 应用模型 一个工作量特异性API。这里有些例子: ASP.NET ASP.NET Web API 实体框架 (EF) Windows 演示基础 (WPF) Windows 通信基础 (WCF) Windows 工作流基础 (WF) Windows 窗体 (WinForms) ASP.NET .NET Framework 附带的原始 ASP.NET 实现,也称为 ASP.NET 4.x。 有时 ASP.NET 是一个总称,既指原始 ASP.NET 又指 ASP.NET Core。该术语在任何给定实例中的含义由上下文决定。当您想明确表示您没有使用 ASP.NET 来表示这两种实现时,请参阅 ASP.NET 4.x。 请参阅ASP.NET 文档。 ASP.NET 核心 ASP.NET 的跨平台、高性能、开源实现。 请参阅ASP.NET Core 文档。 部件 一个.dll或.exe文件,其中可以包含可由应用程序或其他程序集调用的 API 集合。 程序集可能包括接口、类、结构、枚举和委托等类型。项目的bin文件夹中的程序集有时称为二进制文件。另见库。 BCL 基类库。 一组包含 System.*(以及在有限范围内的 Microsoft.*)命名空间的库。BCL 是一种通用的低级框架,高级应用程序框架(例如 ASP.NET Core)在其上构建。 .NET 5(和 .NET Core)及更高版本的 BCL 源代码包含在.NET 运行时存储库中。大多数 BCL API 在 .NET Framework 中也可用,因此您可以将此源代码视为 .NET Framework BCL 源代码的分支。 以下术语通常指的是 BCL 所指的同一 API 集合: 核心 .NET 库 框架库 运行时库 共享框架 CLR 公共语言运行时。 确切的含义取决于上下文。公共语言运行时通常是指.NET Framework的运行时或.NET 5(和 .NET Core)及更高版本的运行时。 CLR 处理内存分配和管理。CLR 也是一个虚拟机,它不仅可以执行应用程序,还可以使用JIT编译器即时生成和编译代码。 .NET Framework 的 CLR 实现仅适用于 Windows。 .NET 5 和更高版本的 CLR 实现(也称为 Core CLR)是从与 .NET Framework CLR 相同的代码库构建的。最初,Core CLR 是 Silverlight 的运行时,旨在运行在多个平台上,特别是 Windows 和 OS X。它仍然是一个跨平台的运行时,现在包括对许多 Linux 发行版的支持。 另请参见运行时。 核心CLR .NET 5(和 .NET Core)及更高版本的公共语言运行时。 请参阅CLR。 核心RT 与CLR 相比,CoreRT 不是虚拟机,这意味着它不包括即时生成和运行代码的设施,因为它不包括JIT。但是,它确实包括GC以及运行时类型识别 (RTTI) 和反射的能力。然而,它的类型系统被设计成不需要用于反射的元数据。不需要元数据可以让AOT工具链链接掉多余的元数据和(更重要的是)识别应用程序不使用的代码。CoreRT 正在开发中。 请参阅CoreRT和.NET 运行时实验室介绍。 跨平台 能够开发和执行可在多种不同操作系统(例如 Linux、Windows 和 iOS)上使用的应用程序,而无需专门为每个操作系统重写。这实现了不同平台上的应用程序之间的代码重用和一致性。 见平台。 生态系统 用于为给定技术构建和运行应用程序的所有运行时软件、开发工具和社区资源。 术语“.NET 生态系统”与“.NET 堆栈”等类似术语的不同之处在于它包含第三方应用程序和库。这是一个句子中的示例: “ .NET Standard背后的动机是在 .NET 生态系统中建立更大的统一性。” 框架 一般而言,一个全面的 API 集合,可促进基于特定技术的应用程序的开发和部署。从一般意义上讲,ASP.NET Core 和 Windows 窗体是应用程序框架的示例。框架和库这两个词经常作为同义词使用。 “框架”一词在以下术语中具有不同的含义: 框架库 .NET 框架 共享框架 目标框架 TFM(目标框架名

01

一个Mini的ASP.NET Core框架的实现

在2019年1月的微软技术(苏州)俱乐部成立大会上,蒋金楠老师(大内老A)分享了一个名为“ASP.NET Core框架揭秘”的课程,他用不到200行的代码实现了一个ASP.NET Core Mini框架,重点讲解了7个核心对象,围绕ASP.NET Core最核心的本质—由服务器和若干中间件构成的管道来介绍。我在腾讯视频上看到了这个课程的录像,看了两遍之后结合蒋金楠老师的博客《200行代码,7个对象—让你了解ASP.NET Core框架的本质》一文进行了学习并下载了源代码进行研究,然后将其改成了基于.NET Standard的版本,通过一个.NET Framework和一个.NET Core的宿主端来启动一个ASP.NET Core的Server,并将其放到了GitHub上,欢迎Clone学习。

02

Linux下的.NET之旅:第一站,CentOS+Mono+Xsp构建最简单的ASP.NET服务器

由于Linux/Unix等有更强的安全性、运行效率高、拥有大量优秀的开源组件,而.Net则有着其他语言无与伦比的开发效率,因此在非微软平台下运行.Net程序的需求很强烈。Mono 是一个由Novell 公司发起、并且得到微软支持的开源项目。Mono 项目可以在Linux,FreeBSD,Unix,Mac OS X 、Android和苹果系统等非微软操作系统下兼容运行.Net程序。目前占IOS游戏应用市场55%份额的游戏都是使用基于Mono的Unity3d技术开发的。    基于Mono让ASP.Net开发的网站运行在Linux操作系统下也已经有了大量成功的案例,比如世界著名的网站“维基百科WikiPedia ”的搜索部分就是使用Mono支撑运行的、Mozilla开发者社区也是基于Mono运行,可以看http://www.mono-project.com/Companies_Using_Mono  这一些使用Mono进行开发的公司的列表。让.Net脱离Windows的禁锢,在开源的世界中尽情的徜徉。

04

.NET Core 和 .NET 5 的发布和支持

Microsoft 发布了 .NET 5(和 .NET Core)及更高版本的主要版本、次要版本和服务更新(补丁)。本文解释了发布类型、服务更新、SDK 功能带、支持期限和支持选项。 发布类型 有关每个版本类型的信息以Major.minor.patch形式编码在版本号中。 例如: .NET Core 3.0 和 NET 5.0 是主要版本。 .NET Core 3.1 是 .NET Core 3.0 主要版本之后的第一个次要版本。 .NET Core 3.1.7 是 .NET Core 3.1 的第七个补丁。 主要版本 主要版本包括新功能、新的公共 API 表面区域和错误修复。示例包括 .NET Core 3.0 和 .NET 5。由于更改的性质,这些版本预计会有重大更改。主要版本与以前的主要版本并排安装。 次要版本 次要版本还包括新功能、公共 API 表面区域和错误修复,也可能有重大更改。示例包括 .NET Core 2.1 和 .NET Core 3.1。这些版本与主要版本之间的区别在于更改的幅度较小。从 .NET Core 3.0 升级到 3.1 的应用程序有一个较小的跳跃向前推进。次要版本与以前的次要版本并排安装。 服务更新 服务更新(补丁)几乎每个月都会发布,这些更新包含安全和非安全错误修复。例如,.NET Core 3.1.8 是 .NET Core 3.1 的第八次更新。当这些更新包含安全修复程序时,它们会在“星期二补丁”发布,也就是每月的第二个星期二。预计服务更新将保持兼容性。从 .NET Core 3.1 开始,服务更新是删除先前更新的升级。例如,3.1 的最新服务更新会在成功安装后删除之前的 3.1 更新。 功能带(仅限 SDK) .NET SDK 的版本控制与 .NET 运行时略有不同。为了与新的 Visual Studio 版本保持一致,.NET SDK 更新有时会包含新功能或新版本的组件,例如 MSBuild 和 NuGet。这些新功能或组件可能与相同主要或次要版本的先前 SDK 更新中提供的版本不兼容。 为了区分此类更新,.NET SDK 使用了功能带的概念。例如,第一个 .NET Core 3.1 SDK 是 3.1.100。此版本对应于 3.1.1xx 功能带。功能带在版本号第三部分的数百个组中定义。例如,3.1.101 和 3.1.201 是两个不同特征带中的版本,而 3.1.101 和 3.1.199 是同一特征带中的版本。安装 .NET Core SDK 3.1.101 后,如果 .NET Core SDK 3.1.100 存在,则会从计算机中删除。当 .NET Core SDK 3.1.200 安装在同一台机器上时,不会删除 .NET Core SDK 3.1.101。 运行时前滚和兼容性 主要和次要更新与以前的版本并行安装。即使安装了较新的版本,为特定的major.minor版本而构建的应用程序仍会继续使用该目标运行时。除非您选择启用此行为,否则应用程序不会自动前滚以使用较新的Major.minor版本的运行时。为面向 .NET Core 3.0 构建的应用程序不会自动开始在 .NET Core 3.1 上运行。我们建议在部署到生产环境之前重建应用程序并针对更新的主要或次要运行时版本进行测试。有关更多信息,请参阅框架相关应用前滚和自包含部署运行时前滚。 服务更新与主要和次要版本的处理方式不同。默认情况下,为 .NET Core 3.1 构建的应用程序在 3.1.0 运行时上运行。安装该服务更新后,它会自动前滚以使用较新的 3.1.1 运行时。此行为是默认行为,因为我们希望在安装后立即使用安全修复程序,而无需任何其他操作。您可以选择退出此默认前滚行为。 .NET Core 和 .NET 5 版本生命周期 .NET Core、.NET 5 和更高版本采用现代生命周期,而不是已用于 .NET Framework 版本的固定生命周期。具有固定生命周期的产品提供较长的固定期限支持,例如 5 年的主流支持和 5 年的扩展支持。主流支持包括安全和非安全修复,而扩展支持仅提供安全修复。采用现代生命周期的产品具有更类似于服务的支持模型,支持周期更短,发布频率更高。 发布曲目 发布有两个支持轨道: 当前版本 这些版本在下一个主要或次要版本发布后的六个月内得到支持。以前(.NET Core 3.0 及更早版本),这些版本仅在下一个主要或次要版本发布后的三个月内受支持。 例子: .NET Core 3.0 于 2019 年 9 月发布,紧随其后的是 2019 年 12 月的 .NET Core 3.1。 .NET Core 3.0 支持于 2020 年 3 月结束,即 3.1 发布 3 个月后。 长期支持(LTS) 版本 这些版本的支持期限至少为 3 年,或者下一个 LT

01
领券