.NET7 Preview4之MapGroup

这篇是“闻(看)香(码)识(学)女(技)人(术)”。

这也是一个有意思的功能,路由分组,啥也不说了,看代码看结果:

using Microsoft.AspNetCore.Http.HttpResults;
using Microsoft.AspNetCore.OpenApi;var builder = WebApplication.CreateBuilder(args);
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();
var app = builder.Build();
if (app.Environment.IsDevelopment())
{app.UseSwagger();app.UseSwaggerUI();
}
app.MapGet("/test", () =>
{
})
.WithTags("TestApi");app.MapPost("/test", () =>
{
})
.WithTags("TestApi");app.MapGroup("/data").MapDataApi();//.RequireAuthorization();
app.Run();/// <summary>
/// 分组扩展类
/// </summary>
public static class DataApi
{public static GroupRouteBuilder MapDataApi(this GroupRouteBuilder group){group.MapGet("/", Query);group.MapDelete("/{id}", Remove);group.MapPost("/", Add);group.MapPut("/", Modify).WithOpenApi();return group;}/// <summary>/// 查询数据/// </summary>/// <returns></returns>public static async Task<JsonHttpResult<List<Data>>> Query(){await Task.Delay(TimeSpan.FromMicroseconds(1));return TypedResults.Json<List<Data>>(new List<Data> {new Data { ID = 1, Name = "test01" },new Data { ID = 2, Name = "test02" },});}/// <summary>/// 删除/// </summary>/// <param name="id"></param>/// <returns></returns>public static async Task<Ok> Remove(int id){await Task.Delay(1);return TypedResults.Ok();}/// <summary>/// 添加/// </summary>/// <param name="data"></param>/// <returns></returns>public static async Task<Created<string>> Add(Data data){await Task.Delay(1);return TypedResults.Created<string>("/", "ok");}/// <summary>/// 修改/// </summary>/// <param name="data"></param>/// <returns></returns>public static async Task<Ok> Modify(Data data){await Task.Delay(1);return TypedResults.Ok();}
}public class Data
{public int ID { get; set; }public string? Name { get; set; }
}

看图:

873b46082800f5f0408875cea84bb24c.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/287411.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【空间数据库】ArcGIS 10.6 Database_Server_Desktop安装、连接数据库服务、创建企业级数据库(附server10.6.ecp)

由于作者一直使用SQL Server 2008 R2开发版,之前在ArcGIS中创建企业级数据库都是基于单独安装的SQL Server 2008 R2开发版,今天我们演示安装ArcGIS10.6自带的数据库服务(SQL Server 2014 Express版本)、连接数据库服务和创建数据库。 首先,我们来看一下完整的ArcGIS10.6安…

(一)easyUI之树形网络

树形网格&#xff08;TreeGrid&#xff09;可以展示有限空间上带有多列和复杂数据电子表 一、案例一&#xff1a;按tree的数据结构来生成 前台<% page language"java" contentType"text/html; charsetUTF-8"pageEncoding"UTF-8"%> <!DO…

《看聊天记录都学不会C语言?太菜了吧》(4)零基础的我原来早就学会编程了?

若是大一学子或者是真心想学习刚入门的小伙伴可以私聊我&#xff0c;若你是真心学习可以送你书籍&#xff0c;指导你学习&#xff0c;给予你目标方向的学习路线&#xff0c;无套路&#xff0c;博客为证。 本系列文章将会以通俗易懂的对话方式进行教学&#xff0c;对话中将涵盖…

Android之华为平板打日志提示Permission denied

1 问题 $ adb logcat | grep ssfsafaf int logctl_get(): open /dev/hwlog_switch fail -1, 13. Permission deniedNote: log switch off, only log_main and log_events will have logs!2 解决办法 1&#xff09;、如果是华为手机&#xff0c;打开手机的拨号界面&#xff0c…

二叉树结构 codevs 1029 遍历问题

codevs 1029 遍历问题 时间限制: 1 s空间限制: 128000 KB题目等级 : 钻石 Diamond题目描述 Description我们都很熟悉二叉树的前序、中序、后序遍历&#xff0c;在数据结构中常提出这样的问题&#xff1a;已知一棵二叉树的前序和中序遍历&#xff0c;求它的后序遍历&#xff0c;…

java的概率的程序_java实现一个抽奖概率类

在一些项目需求中&#xff0c;可能会遇到抽奖问题&#xff0c;如提供一系列奖品及获奖概率&#xff0c;要求根据概率返回每次抽到的奖品。以下是本人在实际项目中写的一个抽奖工具类&#xff0c;与大家共同分享&#xff1a;import java.util.ArrayList;import java.util.List;i…

【空间数据库】ArcGIS10.6连接PostgreSQL数据库并显示数据至ArcMap中

前面的文章《【开源数据库】Windows操作系统PostgreSQL+PostGIS环境搭建图文安装教程 》讲解了在Windows上安装开源GIS和开源数据库。本文接着来讲采用ArcGIS 10.6连接PostgreSQL数据库,并加载矢量数据到ArcMap中。 我们已经在pgAdmin中创建了一个空间数据库test,并导入了Sha…

算法-低位优先的字符串排序

低位优先的字符串排序相当于是对键索引计数方法的一个扩展&#xff0c;主要用于处理固定长度字符串&#xff0c;比如说手机号&#xff0c;固定电话&#xff0c;银行卡卡号&#xff0c;字符串的长度为N&#xff0c;从右向左开始进行每个键作为值开始遍历&#xff0c;实现比较简单…

使用 AgileConfig 动态配置 NLog

NLog 是我们在 .NET 领域使用非常广泛的日志组件。它默认使用 xml 来维护它的配置。最近有几个同学问我当使用 AgileConfig 的时候如何配置 NLog 。因为 AgileConfig 不支持集成 xml 格式的配置。其实 NLog 是支持从 appsettings.json / IConfiguration 读取配置的&#xff0c;…

systemd      kernel

Systemd&#xff1a;Systemd的新特性&#xff1a;1.在系统引导的时候可以实现服务的并行启动&#xff1b;2.能够实现按需激活进程&#xff1b;在系统启动时&#xff0c;需要随系统启动服务&#xff0c;其服务进程并没有启动&#xff0c;但是Systemd为每一个此类服务进程都注册了…

Android之提示Method return type must not include a type variable or wildcard:

1 问题 调用retrofit的时候提示错误如下 Method return type must not include a type variable or wildcard: io.reactivex.Observable<package.class<?>> 2 原因 我们知道英文单词variable是多变的&#xff0c;易变的意思&#xff0c;然后 wildcard是未知数的…

《看聊天记录都学不会C语言?太菜了吧》(5)打了一把游戏我学会了一个编程知识?

若是大一学子或者是真心想学习刚入门的小伙伴可以私聊我&#xff0c;若你是真心学习可以送你书籍&#xff0c;指导你学习&#xff0c;给予你目标方向的学习路线&#xff0c;无套路&#xff0c;博客为证。 本系列文章将会以通俗易懂的对话方式进行教学&#xff0c;对话中将涵盖…

【QGIS入门实战精品教程】2.1:初识QGIS软件

从今天开始&#xff0c;我们一起来学习一款免费开源、对机器要求低、功能强大的GIS软件&#xff1a;QGIS &#xff01; 一、QGIS简介 QGIS&#xff08;原称Quantum GIS&#xff09;是一个自由软件的桌面GIS软件。它提供数据的显示、编辑和分析功能。 QGIS是一个用户界面友好的…

Android深度探索(卷1)HAL与驱动开发第六章总结

操作系统是通过各种驱动程序赖家与硬件设备的&#xff0c;它为用户屏蔽了各种各样的设备&#xff0c;驱动硬件是操作系统最基本的功能&#xff0c;并且提供统一的操作方式。设备驱动程序是操作系统最基本的组成部分之一&#xff0c;在Linux内核源程序中也占有60%以上&#xff0…

es mysql 同步插件_[es和数据库怎么同步]mysql与elasticsearch实时同步常用插件及优缺点对比(ES与关系型数据库同步)...

目前mysql与elasticsearch常用的同步机制大多是基于插件实现的&#xff0c;常用的插件包括&#xff1a;elasticsearch-jdbc,elasticsearch-river-MySQL,go-mysql-elasticsearch,logstash-input-jdbc。本文对四种插件的优缺点进行了图表对比。|序号|插件名称|地址|——:————…

linux上怎么快速删除一个目录?

使用rm -rf命令转载于:https://www.cnblogs.com/dyh-air/p/7726611.html

关于是否在C#中加入不可空引用类型的争论

来自微软的Mads Togersen在近期所提出的一条提议&#xff0c;即在C#语言中加入对不可空引用类型的支持在.NET社区中引起了热烈的争论。人们对此提议的反应大相径庭&#xff0c;既有人对此表示赞赏&#xff0c;也不乏倾向于保持现状的意见。\\在Reddit上&#xff0c;这条提议引起…

Andorid之提示java.lang.RuntimeException: Unable to start service net.gotev.uploadservice.UploadService@

1 问题 用android-upload-service上传一个文件提示错误如下 04-15 17:46:33.245 24932 24932 E AndroidRuntime: Process: com.appsinnova.android.keepshare, PID: 24932 04-15 17:46:33.245 24932 24932 E AndroidRuntime: java.lang.RuntimeException: Unable to start se…

使用 VS Code + Markdown 编写 PDF 文档

1背景介绍 作为一个技术人员&#xff0c;基本都需要编写技术相关文档&#xff0c;而且大部分技术人员都应该掌握 Markdown 这个技能&#xff0c;使用 Markdown 来编写并生成 PDF 文档将会是一个不错的体验&#xff0c;以下就介绍下如何使用 VS Code Markdown 来编写 PDF…

《看聊天记录都学不会C语言?太菜了吧》(6)编程很难吗?差一点就学不会了呢!

若是大一学子或者是真心想学习刚入门的小伙伴可以私聊我&#xff0c;若你是真心学习可以送你书籍&#xff0c;指导你学习&#xff0c;给予你目标方向的学习路线&#xff0c;无套路&#xff0c;博客为证。 本系列文章将会以通俗易懂的对话方式进行教学&#xff0c;对话中将涵盖…