即将发布的 ASP.NET Core 2.2 会有哪些新玩意儿?

2023-05-16

今年 6 月份的时候时候 .NET 团队就在 GitHub 公布了 ASP.NET Core 2.2 版本的 Roadmap(文末有链接),而前两天 ASP.NET Core 2.2 预览版 2 已经可以下载使用了,正式版大约会在今年年底的时候发布。

相对于 2.0 and 2.1 来说,这次更新算是一次小更新了,主要包含 Bug 修复、性能优化、增加一些小的特性、和 Merge 社区的 PR。

下面来总结一下 ASP.NET Core 2.2 有哪些新的东西。

ApiController 特性增强

ApiController 特性是 ASP.NET Core 2.1 引入的,应用在 Controller 类上,主要用来自动对 Model 进行验证并自动响应 400 错误。引入 ApiController 特性后比如下面的代码是多余的:

if (!ModelState.IsValid)
{
return BadRequest(ModelState);
}

在版本 2.2,ApiController 特性提供了 API Explorer 元数据,可以更友好地生成 Swagger/OpenAPI 文档。然后还增加了一些默认约定,如果代码不符合约定,是会有建议的。比如下面的代码:

[HttpPost("/orders")]
public ActionResult<Order> CreateOrder(OrderData orderData)
{
....
return Ok(new Order() {...});
}

会出现建议提示,通过快捷键 Ctrl+.,编辑器会建议你这么写:

[HttpPost("/orders")]
[ProducesResponseType(typeof(CatalogItem),(int)HttpStatusCode.OK)]
public ActionResult<Order> CreateOrder(OrderData orderData)
{
....
return Ok(new Order() {...});
}

引入新的路由系统

会有一个叫 Dispatcher 的东西,它的设计是为了让路由匹配更早地出现在管道中,这样可对中间件可见,中间件通过它可以知道下一个路径的信息。

提供调用 API 的 REPL 工具

dotnet CLI 中集成可以调用 API 的 REPL 工具。这个主要是方便快速调试 API 的,类似命令行的 curl 命令,但应该更强大。

生成调用 API 客户端代码 (C# 和 TypeScript)

可以根据写好的 API 元数据,生成调用 API 的客户端代码(C# 和 TypeScript)。

授权服务

提供基于 OpenID 的授权服务,这个服务相当于项目的统一授权点,可用于 SPA、Native App 等。

其它

  • Kestrel 和 HttpClient 的 HTTP/2 支持。

  • 应用的健康检查,比如内存消耗。

  • SignalR 支持使用 Java 和 C++ 链接。

详情请查看官方 ASP.NET Core 2.2 Roadmap:
https://github.com/aspnet/Announcements/issues/307

转载于:https://www.cnblogs.com/willick/p/aspnetcore2-2-2.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

即将发布的 ASP.NET Core 2.2 会有哪些新玩意儿? 的相关文章

  • 缓存详解

    前言 总括 xff1a 缓存从来都是前端的一个痛点 xff0c 很多前端搞不清楚缓存到底是何物 xff0c 从而给自己创造了一些麻烦 xff0c 本文一如既往的用通俗易懂的文字和实例来讲述缓存 xff0c 希望能让您有所得 原文博客地址 x
  • JAVA URL协议扩展支持HDFS

    为什么80 的码农都做不了架构师 xff1f gt gt gt 问题 xff1a 最近在做自然语言处理的时候 使用了谢菲尔德大学的Gate 奈何Gate只能从本地文件读取配置和语义文件 特将此改造成从HDFS读取 并且和Spark集成起来
  • Docker搭建MySQL服务

    Docker开源镜像 前面我们已经安装好了Docker xff0c 也简单了解了Docker 那么我们可以尝试搭建一个MySQL服务 要搭建服务就要启动服务容器 xff0c 要创建容易就要有镜像 xff0c Docker提供了一个类似Git
  • LACP链路聚合-基础篇

    一 基本概念 系统LACP优先级系统LACP优先级是为了区分两端设备优先级的高低而配置的参数 LACP模式下 xff0c 两端设备所选择的活动接口必须保持一致 xff0c 否则链路聚合组就无法建立 此时可以使其中一端具有更高的优先级 xff
  • Ubuntu apt 使用代理

    由于一台 Ubuntu 主机无法直接连接外网 xff0c 但同内网的另一台 Windows 主机可以连接外网 xff0c 于是在 Win 主机上搭建了代理服务 xff0c 使 Ubuntu 主机通过代理更新系统 记录配置 apt 代理的方式
  • CIDR概述及其地址块计算

    CIDR概述 英文 xff1a Classless Inter Domain Routing xff0c 中文是 xff1a 无分类域间路由选择 一般叫做无分类编址 设计目的 xff1a 解决路由表项目过多过大的问题 表示法 xff1a l
  • Python基础之元组

    元组初识 元组的认识 首先 xff0c 我们来认识一下元组 xff1a 定义一个元组 uesr tuple 61 34 zhangsan 34 34 lisi 34 34 wangwu 34 定义一个空元组 empty tuple 61 元
  • 函数声明后面的const用法

    void function const 通常我们会看到一些函数声明后面会跟着一个const xff0c 这个const是做什么的呢 xff1f 看一下下面的例子 xff0c 就知道了 直接在编译前 xff0c 就会提示下面的两个错误 tes
  • 修复移动硬盘"文件或目录损坏且无法读取"

    今天使用移动硬盘的时候强制拔掉了数据线 xff0c 再此连上之后发现原来的F G H三个盘的盘符都在 xff0c 但是F盘只有盘符 xff0c 双击之后提示 34 文件或目录损坏且无法读取 34 而这个盘有我70G的数据 于是上网查资料 x
  • 维基百科的网址(没被墙)

    https en wikipedia org wiki Main Page
  • 初学者计算机_初学者极客:更改笔记本计算机盒盖时Windows的功能

    初学者计算机 Mihai Simonia Shutterstock com Mihai Simonia Shutterstock com Are you tired of your laptop automatically going to
  • 想要恢复回收站误删文件,就用EasyRecovery!

    不知道大家在日常工作中遇到回收站误删文件的情况吗 xff1f 遇到这样的情况 xff0c 不要慌张 xff0c 可以借助专业的数据恢复软件来处理 EasyRecovery软件是由全球著名数据厂商Kroll Ontrack出品的数据恢复软件
  • ubuntu 设置root用户密码并实现root用户登录

    一 xff1a 设置root用户密码 在ubuntu中root用户的密码是随机的 xff0c 所以需要我们自己起设置root用户的密码 在终端命令行中执行 sudo passwd 这时候会提示你输入当前用户密码 xff0c 输入成功之后 x
  • electron制作聊天界面(仿制qq)

    效果图 样式使用scss和flex布局 这也是制作IM系统的最后一个界面了 在制作之前参考了qq和千牛 需要注意的点 qq将滚动条美化了 而且在无操作的情况下是不会显示的 滚动条美化 webkit scrollbar 滚动条整体样式 wid
  • element-ui中的el-table滚动加载事件

    问题描述 xff1a 当表格数据量过多 xff0c 一次请求回来会很卡 xff0c 同时又不想分页的情况下 xff0c 我们想让鼠标滚动到表格底部时再去请求数据 解决思路 xff1a 项目用的是element ui的框架 xff0c 给el
  • OpenWRT配置IPV6

    准备材料 智博通 WG3526 路由器 MT7621A 16M ROM 512M RAM 中国移动光纤入户 Prefix Delegation前缀委托模式 刷机 OpenWRT 18 06 for ZBT WG3526 配置 etc con
  • chrome浏览器去掉打开新标签的常用地址缩略图

    chrome浏览器是我们最常用的浏览器 xff0c 但是打开标签后会显示历史的缩略图 有时别人借用我们的电脑 xff0c 或者开着电脑演示时 xff0c 这些浏览记录就会被展示出来 xff0c 总是感觉怪怪的 谷歌一番 xff0c 发现了关
  • cisco交换机如何查看CPU和内存使用情况,以及如何查看接口数据量

    switch4006 show processes cpu CPU utilization for five seconds 4 0 one minute 4 five minutes 4 PID Runtime ms Invoked uS
  • Remix OS PC硬盘版的安装方法。

    前言 大家好 xff0c 今天由我 xff0c 功能讨论区版主来给大家介绍一下Remix OS PC硬盘版的安装方法 开始之前大家需要明确几点 xff1a 0 你的电脑需要满足如下要求 xff08 仔细看清楚这个列表 xff0c 缺一不可
  • inline-block在360浏览器中的显示问题

    360浏览器不支持inline block效果 xff0c 在样式表中加入 display inline block zoom 1 display inline 就能达到display inline block的效果了 转载于 https

随机推荐

  • 个人团队贡献分+转会人员

    经过我们的商议 xff0c 个人团队贡献分如下分配 xff1a 黄杨 xff1a 33 王安然 xff1a 32 韩佳胤 xff1a 31 刘俊伟 xff1a 28 林璐 xff1a 29 谢伯炎 xff1a 30 谭传奇 xff1a 27
  • 如何在bash shell命令行中非常有效地搜索历史命令?

    How to search history commands very effectively in bash shell command line 如何在bash shell 命令行中非常有效地搜索历史命令 xff1f Just ente
  • GreenPlum 锁表以及解除锁定

    最近遇到truncate表 xff0c 无法清理的情况 xff0c 在master节点查看加锁情况 xff0c 并未加锁 这种情况极有可能是segment节点相关表加了锁 xff0c 所以遇到这种情况除了排查master节点的锁 xff0c
  • 使用 FreeRTOS 时注意事项总结(基础篇教程完结)

    以下转载自安富莱电子 xff1a http forum armfly com forum php FreeRTOS 的初始化流程 推荐的初始化流程如下 xff0c 本教程配套的所有例子都是采用的这种形式 xff0c 当然 xff0c 不限制
  • 使用Python实现Hadoop MapReduce程序

    为什么80 的码农都做不了架构师 xff1f gt gt gt 笔者的机器运行效果如下 xff08 输入数据是find的帮助手册 xff0c 和笔者预期一样 xff0c the是最多的 xff09 xff1a 以下是原帖 在这个实例中 xf
  • 解决vnc连接Linux出现X形

    编辑vnc配置文件 vnc xstartup如下 xff1a bin sh Uncomment the following two lines for normal desktop unset SESSION MANAGER exec et
  • 交换机 BootROM 下的升级配置

    实验十 交换机 BootROM 下的升级配置 一 实验目的 1 了解什么时候采用 BootROM 升级 xff1b 2 了解怎样使用 BootROM升级交换机 二 应用环境 当交换机的系统文件遭到破坏时 xff0c 已经无法进入正常的CLI
  • 如何利用 Visual Studio 自定义项目或工程模板

    在开发项目的时候 xff0c 由其是商业性质的大型项目时 xff0c 往往需要在每个代码文件上都加上一段关于版权 开发人员的信息 xff0c 并且名称空间上都需要带有公司的标志 这个时候 xff0c 是选择在开发的时候手动添加还是自动生成呢
  • vncserver和Ubuntu Xfce4远程桌面环境的配置,解决不显示图形界面

    vncserver和Ubuntu Xfce4远程桌面环境的配置 参考的http blog 163 com thinki cao blog static 83944875201303014531803 ubuntu用vnc连接后不显示图形界面
  • Windows平台下利用Fastcopy来做数据的定期同步

    FastCopy号称是Windows 平台上最快的文件拷贝 删除软件 xff0c 特别是文件超多 超大的情况下 为此我们在数据备份的时候选择FastCopy 但是 FastCopy如果直接来做计划任务的话会有一个问题 xff0c 因为打开的
  • 善用VS中的Code Snippet来提高开发效率

    前言 在谈谈VS中的模板中 xff0c 我介绍了如何创建项目 项模板 xff0c 这种方式可以在创建项目时省却不少重复性的工作 xff0c 从而提高开发效率 在创建好了项目和文件后 xff0c 就得开始具体的编码了 xff0c 这时又有了新
  • [git]merge和rebase的区别

    前言 我从用git就一直用rebase xff0c 但是新的公司需要用merge命令 xff0c 我不是很明白 xff0c 所以查了一些资料 xff0c 总结了下面的内容 xff0c 如果有什么不妥的地方 xff0c 还望指正 xff0c
  • 正则表达式python_Python的隐藏正则表达式宝石

    正则表达式python There are many terrible modules in the Python standard library but the Python re module is not one of them W
  • IP地址自动封与解封的shell脚本

    本脚本学习与阿铭的脚本课程 用于防止公司网站被DDos攻击时 xff0c 封禁 肉机 的IP地址 共分为以下步骤 xff1a 1 每分钟分析一次访问日志 data logs access log 2 把访问量超过100的IP给封掉 3 将封
  • 应用中抛出SELECT/UPDATE/INSERT/DELETE command denied to user 'XXX'@'XXX.XXX.XXX.XXX' for table 'xxx' 的5种原...

    实为吾之愚见 望诸君酌之 闻过则喜 xff0c 与君共勉 第一章 准备环境 创建数据测试数据 xff0c 以下测试多是基于自建mysql进行 mysql gt create database test1 Query OK 1 row aff
  • 数据标注的作用及行业现状

    在之前的内容中讲过确立一个算法模型需要使用大量标注好的数据去训练机器让机器去学习其中的特征以达到 智能 的目的 而数据标注就是帮助机器去学习去认知数据中的特征 比如我们要让机器学习认知汽车 xff0c 我们直接给机器一个汽车的图片它是无法识
  • 如何解决安卓手机显示google play服务停止运行?

    相信不少的安卓用户都遇到过这种情况 xff1a 很抱歉 xff0c google play服务 已停止运行 这到底是怎么一回事呢 xff1f 接下来就通过本文来给大家介绍一下 xff0c 我们一起往下看 xff01 其实呢 xff0c 这句
  • Failed to stop the server machine ' xxx.xxx'

    2019独角兽企业重金招聘Python工程师标准 gt gt gt arcgis for server 10 2 在部署新站点时抛出异常 xff1a Failed to create the site Failed to stop the
  • vue中使用jquery报错 $ is not defined

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 一 问题 is not defined 在使用Vs Code编写Vue应用的时候 xff0c 从页面中引入jquery后 xff0c 在 vue文件编写使用时 xff0c
  • 即将发布的 ASP.NET Core 2.2 会有哪些新玩意儿?

    今年 6 月份的时候时候 NET 团队就在 GitHub 公布了 ASP NET Core 2 2 版本的 Roadmap xff08 文末有链接 xff09 xff0c 而前两天 ASP NET Core 2 2 预览版 2 已经可以下载