.NET9增强OpenAPI规范,不再内置swagger

ASP.NETCore in .NET 9.0 OpenAPI官方文档ASP.NET Core API 应用中的 OpenAPI 支持概述 | Microsoft Learnhttps://learn.microsoft.com/zh-cn/aspnet/core/fundamentals/openapi/overview?view=aspnetcore-9.0https://learn.microsoft.com/zh-cn/aspnet/core/fundamentals/openapi/overview?view=aspnetcore-9.0

Install-Package Microsoft.AspNetCore.OpenApi

cs 复制代码
//在应用生成器的服务集合上使用AddOpenApi扩展方法添加 OpenAPI 服务。
builder.Services.AddOpenApi();// Document name is v1

//映射 OpenAPI 文档路径
app.MapOpenApi();

提取生成的 OpenAPI 文档时,文档名称作为请求中的doucumentName参数提供。

GET http://localhost:5000/openapi/v1.json

Swagger使用

Install-Package Swashbuckle.AspNetCore.SwaggerUI

在Program.cs中配置Swagger

cs 复制代码
if (app.Environment.IsDevelopment())
{
    app.MapOpenApi();
    app.UseSwaggerUI(options =>
    {
        options.SwaggerEndpoint("/openapi/v1.json", "v1");
    });
}

访问地址:~/Swagger

Scalar使用

Install-Package Scalar.AspNetCore

cs 复制代码
using Scalar.AspNetCore;

if (app.Environment.IsDevelopment())
{
    app.MapOpenApi();
    app.MapScalarApiReference();
}

访问地址:~/Scalar

相关推荐
van久4 天前
.Net Core 学习:Razor Pages中 HTML 表头字段的两种写法对比
学习·html·.netcore
武藤一雄4 天前
C# 万字拆解线程间通讯?
后端·微软·c#·.net·.netcore·多线程
武藤一雄5 天前
.NET中到底什么是SignalR (持续更新)
后端·微软·c#·asp.net·.net·.netcore·signalr
by__csdn5 天前
第二章 (.NET Core环境搭建)第二节( Visual Studio Code)
ide·vscode·c#·vue·asp.net·.net·.netcore
by__csdn5 天前
第二章 (.NET Core环境搭建)第三节( Visual Studio for Mac)
ide·kubernetes·c#·asp.net·.net·.netcore·visual studio
武藤一雄7 天前
C#:进程/线程/多线程/AppDomain详解
后端·微软·c#·asp.net·.net·wpf·.netcore
武藤一雄7 天前
C#:Linq大赏
windows·后端·microsoft·c#·.net·.netcore·linq
by__csdn7 天前
第一章 (ASP.NET Core入门)第三节( 认识.NET Standard)
后端·c#·asp.net·.net·.netcore·f#·vb.net
by__csdn7 天前
第一章 (ASP.NET Core入门)第一节( 认识.NET Core)
后端·c#·asp.net·.net·.netcore·f#·vb.net
by__csdn7 天前
第一章 (ASP.NET Core入门)第二节( 认识ASP.NET Core)
数据库·后端·c#·asp.net·.net·.netcore·f#