[翻译] ASP.NET Core 2.2 正式版发布
本文为翻译,原文地址:https://blogs.msdn.microsoft.com/webdev/2018/12/04/asp-net-core-2-2-available-today/
我(文章作者)很高兴地宣布ASP.NET Core 2.2现在作为.NET Core 2.2的一部分提供!
怎么获取它
您可以从 .NET Core 2.2 下载页面下载适用于您的开发机器和构建服务器的新 .NET Core SDK(2.2.100)。 此页面还提供了新的 Windows Server hosting,运行时安装程序和二进制存档,用于更新服务器。
此版本将 .NET Core,ASP.NET Core 和 Entity Framework Core 更新为2.2.0版。 新的SDK版本是2.2.100。 Visual Studio要求如下:
- Visual Studio 2017 15.9 或者更高版本
- Visual Studio for Mac 7.7 或者更高版本
- Visual Studio Code C# 扩展 1.17.1或者更高版本
Visual Studio 2019 16.0 Preview 1,今天也可以使用,包含了 .NET Core SDK 2.2.100 作为可选组件。
更新了什么?
此 ASP.NET Core 版本的主题是在构建 Web / HTTP API 方面提高开发人员的工作效率和平台功能。 像往常一样,我们也做了一些性能改进。 我们已将这些功能作为预览版本的一部分发布,您可以通过以下链接阅读这些功能:
- 与流行的Open API(Swagger)库更好地集成,包括使用代码分析器进行设计时检查
- 引入端点路由,在MVC中提高了20%的路由性能
- 使用LinkGenerator类改进URL生成并支持路由参数变换器(以及来自Scott Hanselman的文章)
- 用于应用程序运行状况监视的新的健康检查API
- IIS进程内托管支持,吞吐量提高了400%
- 提高15%MVC模型验证性能
- 问题详细信息(RFC 7807)支持MVC以获取详细的API错误结果
- 在ASP.NET Core中预览HTTP / 2服务器支持
- Bootstrap 4和Angular 6的模板更新
- ASP.NET Core SignalR Java 客户端
- Linux上的HTTPClient性能提高了60%,Windows上提高了20%
Health Checks与BeatPulse集成
我们很高兴地宣布,BeatPulse项目现在支持新的Health Checks API,这意味着您可以使用他们的强大支持轻松添加对数十种流行系统和依赖项的检查。 以下是BeatPulse团队关于他们对我们新的Health Checks API的支持的消息:
BeatPulse是一个社区驱动的项目,旨在为系统,网络和企业内部常见的各种服务提供健康检查机制,例如: SqlServer,MySql,Postgress,Redis,Kafka等等。 当微软宣布针对2.2路线图的ASP.NET Core健康检查时,BeatPulse团队移植了所有现有的活动包和功能,以便在存储库AspNetCore.Diagnostics.HealthChecks中使用新的Microsoft Health Checks抽象。 除了所有健康检查包之外,BeatPulse团队还结合了其他功能,如Application Insights和Prometheus,故障通知和UI界面,我们可以配置不同的受监控系统,并具有健康状态的全局视图。 此UI可用作Docker Hub中发布的Docker镜像。
即将推出
当我们宣布规划ASP.NET Core 2.2时,我们提到了许多上面没有详述的功能,包括使用IdentityServer4的API授权,Open API(Swagger)驱动的客户端代码生成以及HTTP REPL命令行工具。 这些功能仍在进行中,尚未准备好发布,但我们希望在未来几个月内将它们作为附加组件提供。 感谢您的耐心,同时我们完成了这些体验,让他们为您所有人做好准备。
将项目迁移到ASP.NET Core 2.2
要将ASP.NET Core项目从2.1迁移到2.2,请打开项目的.csproj文件,并将TargetFramework结点的值更改为netcoreapp2.2。 如果您的目标是.NET Framework 4.x,则无需执行此操作。
通过更新NuGet包引用到最新的稳定版本来完成。 请注意,针对.NET Core(而不是.NET Framework)的项目不应为Microsoft.AspNetCore.App程序包指定程序包版本(译者注:这个程序包不指定具体版本号,由SDK管理),因为这将由SDK自动管理。 如果这样做,现在将导致构建警告。
有关升级到ASP.NET Core 2.2的更多信息,请参阅此处。
支持生命周期
ASP.NET Core 2.2是当前.NET Core系列中的最新版本。 这是自2.1 LTS宣布重新建立单独的LTS和Current train以来的首次发布。 Current train是应用新功能,增强功能和常规错误修复的地方,建议大多数客户使用。 请注意,LTS和当前版本都会收到安全性和关键稳定性修复的服务更新。 目前预计2.2将是2.x生命周期中的最后一次non-servicing版本,因此不使用LTS版本的客户将需要在2019年下半年发布后的3个月内迁移到3.0 GA 为了保持支持。
Azure App Service中的可用性
.NET Core 2.2 SDK,运行时和更新的ASP.NET Core IIS模块正在部署到全球的Azure App Service区域。 我们预计这将在2018年12月底之前完成。
某些区域可能会在更新的ASP.NET Core IIS模块(ANCM)之前收到更新的运行时,对于面向ASP.NET Core 2.2的项目,默认情况下这是必需的。 这也是新的进程内托管功能的要求。 如果在部署到Azure App Service后收到启动错误,请尝试通过将AspNetCoreModule属性设置为值“AspNetCoreModule”来配置项目以使用现有版本的ANCM,例如:
<PropertyGroup>
<TargetFramework>netcoreapp2.2</TargetFramework>
<AspNetCoreModuleName>AspNetCoreModule</AspNetCoreModuleName>
<AspNetCoreHostingModel>OutOfProcess</AspNetCoreHostingModel>
</PropertyGroup>
使用最新的ANCM版本更新目标区域后,您可以完全删除该属性并重新部署应用程序以使其切换到使用新的ANCM。
此版本还为Azure App Service中的.NET Core添加了更好的64位支持。 如果您使用进程内托管在.NET Core 2.2上运行ASP.NET Core应用程序,则只需在Azure门户中启用64位选项,该站点现在将以64位进程运行。 有关如何在Azure App Service中使用其他配置在64位进程中运行ASP.NET Core应用程序的其他信息,请参阅此文章。
给予反馈
与往常一样,请通过https://github.com/aspnet/AspNetCore issues向我们提供反馈。 我们期待您的回音!
其他相关
EntityFramework Core 2.2 发布
.NET Core 3 Preview1和Windows桌面框架开源
.NET Core 2.2
[翻译] ASP.NET Core 2.2 正式版发布的更多相关文章
- .NET Core 2.0和ASP.NET Core 2.0正式版抢先体验
.NET Core 2.0和ASP.NET Core 2.0正式版抢先体验 .NET Standard 2.0 is final Broad platform support. .NET Standa ...
- .NET Core 3.0正式版发布
是的,.NET Core 3.0正式版发布了,令人兴奋. WPF 其实,.NET Core 2.1开始已经是个很完善的版本,3.0又带来了什么呢?我站在我的使用角度来看,最最令人振奋的就是:能用WPF ...
- 翻译 Asp.Net Core 2.2.0-preview1已经发布
Asp.Net Core 2.2.0-preview1已经发布 原文地址 ASP.NET Core 2.2.0-preview1 now available 今天我们很高兴地宣布,现在可以试用ASP. ...
- Pro ASP.NET Core MVC 第6版翻译 目录页
Pro ASP.NET Core MVC 第6版 目录 第一部分 第一章 ASP.NET Core MVC 的前世今生 第二章 第一个MVC应用程序(上) 第二章 第一个MVC应用程序(下) 第三章 ...
- 《精通 ASP.NET Core MVC (第七版)》开始发售
学习 Web 开发技术很难吗?没有适合的学习资料,确实很枯燥,很难.如果有一本如同良师益友的优秀图书辅助,就很轻松,一点也不难! 对于优秀的技术图书来说,必须从读者的角度来编写,而不是从作者的角度来编 ...
- .NET 5.0 RC1 发布,离正式版发布仅剩两个版本
原文:http://dwz.win/Qf8 作者:Richard 翻译:精致码农-王亮 说明:1. 本译文并不是完全逐句翻译的,存在部分语句我实在不知道如何翻译或组织就根据个人理解用自己的话表述了.2 ...
- 最强 IDE Visual Studio 2017 正式版发布
Visual Studio 2017 正式版发布,该版本不仅添加了实时单元测试.实时架构依赖关系验证等新特性,还对许多实用功能进行了改进,如代码导航.IntelliSense.重构.代码修复和调试等等 ...
- 终于等到你,最强 IDE Visual Studio 2017 正式版发布
Visual Studio 2017 正式版发布,该版本不仅添加了实时单元测试.实时架构依赖关系验证等新特性,还对许多实用功能进行了改进,如代码导航.IntelliSense.重构.代码修复和调试等等 ...
- Redis 3.0正式版发布,正式支持Redis集群
Redis是一个开源.基于C语言.基于内存亦可持久化的高性能NoSQL数据库,同时,它还提供了多种语言的API.近日,Redis 3.0在经过6个RC版本后,其正式版终于发布了.Redis 3.0的最 ...
随机推荐
- nginx在Centos7.5下源码安装和配置
安装nginx 安装nginx依赖包 yum install -y pcre-devel zlib-devel openssl-devel wget gcc tree vim 进入目录/root/se ...
- SpringBoot 项目在静态工具类中注入 RedisTemplate
静态属性不能直接注入,可以通过其set方法进行注入.(注意生成的set方法需要去掉static). 在工具类里直接注入RedisTemplate,两种方法: (1)使用@Autowired priva ...
- TensorFlow 2.0 Alpha pip安装指令
TensorFlow 2.0 Alpha目前已经可以通过pip安装,亲测有效,安装指令为: # 普通版本 pip install tensorflow==2.0.0-alpha0 # GPU版本 pi ...
- 从零开始学习PYTHON3讲义(十)自己做一个“电子记事本”
<从零开始PYTHON3>第十讲 截至上一讲,我们已经完成了Python语言的基本部分.我们用了三讲来讨论Python语言的控制结构,用了两讲来介绍Python的基本数据类型.可以说仅就语 ...
- 在dotnet core下去中心化访问HTTP服务集群
一般应用服务都会部署到多台服务器之上,一.可以通过硬件得到更多的并发处理能力:二.可以避免单点太故障的出现,从而确保服务7X24有效运作.当访问这些HTTP服务的情况一般都是经过反向代理服务进行统一处 ...
- 声明式RESTful客户端在asp.net core中的应用
1 声明式RESTful客户端 声明式服务调用的客户端,常见有安卓的Retrofit.SpringCloud的Feign等,.net有Refit和WebApiClient,这些客户端都是以java或. ...
- Linux计划任务及压缩归档(week2_day1)--技术流ken
计划任务介绍 我们可以通过一些设置.来让电脑定时提醒我们该做什么事了.或者我们提前设置好,告诉电脑你几点做什么几点做什么,这种我们就叫它定时任务.而遇到一些需要执行的事情或任务.我们也可以通过命令来告 ...
- Nginx反向代理和Node.js后端解决跨域问题
最近在写自己的博客,涉及到跨域的问题,自己捣鼓许久,终于解决了.然后总结一下,记录一下,日后遇到类似的问题的时候也可以得到一些启发. 一.什么是跨域 跨域,指的是浏览器不能执行其他网站的脚本.它是由浏 ...
- MySQL 笔记整理(18) --为什么这些SQL语句逻辑相同,性能却差异巨大?
笔记记录自林晓斌(丁奇)老师的<MySQL实战45讲> (本篇内图片均来自丁奇老师的讲解,如有侵权,请联系我删除) 18) --为什么这些SQL语句逻辑相同,性能却差异巨大? 本篇我们以三 ...
- 变量类型、构造器、封装以及 LeetCode 每日一题
1.成员变量和局部变量 1.1成员变量和局部变量定义 成员变量指的是类里面定义的变量(field),局部变量指的是在方法里定义的变量. 成员变量无须显示初始化,系统会自动在准备阶段或创建该类的实例时进 ...