.net8 Swashbuckle.AspNetCore WEBAPI 配置要点记录

1. 因Controllers中一个方法缺少 HttpMethod特性,导至Swagger报错,报错信息如下:

Swashbuckle.AspNetCore.SwaggerGen.SwaggerGeneratorException: Ambiguous HTTP method for action - XXXX.GetXXXXController.幽幽x. Actions require an explicit HttpMethod binding for Swagger/OpenAPI 3.0

解决办法:

检查所有Action,确保所有Action上面都有正确的HttpMethod特性。

或者在AddSwagger的时候设置一下,让Swagger忽略没有HttpMethod特性的Action,方法是在在Program.cs文件中把 builder.Services.AddSwaggerGen() 这行代码替换成

builder.Services.AddSwaggerGen(options =>

{

options.DocInclusionPredicate((name, api) => api.HttpMethod != null);

});

2. 允许一个ApiController中出现多个请求方法相同的Action

只需把该ApiController中 路由规则 Route("api/\[controller")] 替换成 Route("api/\[controller/action")] 即可。

相关推荐
黑洞视界6 小时前
高性能进程内队列 BufferQueue 1.0 版本发布
.net
fogota12 小时前
【AI】C# .NET8 WPF 第三方DLL引用配置(编译不丢失、不自动删除)
c#·.net·wpf·dll
rockey6272 天前
基于AScript的JavaScript脚本语言发布啦
javascript·c#·.net·js·script
Java面试题总结2 天前
LeetCode 93.复原IP地址
算法·leetcode·职场和发展·.net
慧都小妮子2 天前
SciChart WPF v9.0 更新详解:矢量场图表、堆叠箱线图与 MVVM 轴同步来了
c#·.net·wpf·数据可视化·图表控件·图表
海盗12342 天前
.NET编码规范05-Roslyn分析器与StyleCop
.net