.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

相关推荐
周杰伦fans2 天前
CommunityToolkit.Mvvm(又称MVVM Toolkit) 与 MvvmLight 的核心区别
开发语言·c#·.netcore
时光追逐者4 天前
C#/.NET/.NET Core技术前沿周刊 | 第 61 期(2025年11.10-11.16)
c#·.net·.netcore
夏霞8 天前
c# ASP.NET Core SignalR 客户端配置自动重连次数
c#·.netcore
BXS_null8 天前
windows、linux/ubuntu 系统运用.net core使用Selenium WebDriver实现自动化测试
linux·ubuntu·.netcore
切糕师学AI10 天前
.NET Core 如何使用 Quartz?
.netcore·quartz·作业调度
聪明努力的积极向上11 天前
【C#】System.Text.Encoding.Default 属性在framework和.netcore中的区别
开发语言·c#·.netcore
切糕师学AI12 天前
.NET Core Web + Vue 项目集成消息推送工具SignalR
vue.js·.netcore·signalr
万199913 天前
asp.net core webapi------3.AutoMapper的使用
c#·.netcore
dephixf15 天前
工业级部署指南:在西门子IOT2050(Debian 12)上搭建.NET 9.0环境与应用部署
物联网·.netcore·智能制造·边缘网关·西门子·iot 2050
睡前要喝豆奶粉15 天前
在.NET Core Web Api中使用JWT并配置UserContext获取用户信息
前端·.netcore