spa*_*eet 8 .net c# swagger swagger-ui asp.net-core
我正在使用 asp.net core 6 和 Swashbuckle.AspNetCore
我在我的操作中使用 SwaggerAnnotations
但我的标签组没有排序
这是我的 Swagger UI 页面
我的程序.cs:
builder.Services.AddSwaggerGen(c => {
c.SwaggerDoc("v1", new OpenApiInfo {
Title = "Api", Version = "v1"
});
c.EnableAnnotations();
});
....
var app = builder.Build();
app.UseSwagger();
app.UseSwaggerUI(c => {
c.SwaggerEndpoint("/swagger/v1/swagger.json", "Shoppy.WebApi");
c.InjectStylesheet("/swagger-ui/css/custom.css");
});
Run Code Online (Sandbox Code Playgroud)
spa*_*eet 10
我得到了解决方案
我创建了这个自定义 DocumentFiler,它对标签进行排序
public class OrderTagsDocumentFilter: IDocumentFilter
{
public void Apply(OpenApiDocument swaggerDoc, DocumentFilterContext context)
{
swaggerDoc.Tags = swaggerDoc.Tags
.OrderBy(x => x.Name).ToList();
}
}
Run Code Online (Sandbox Code Playgroud)
并将其添加到 Program.cs
services.AddSwaggerGen(c => {
c.SwaggerDoc("v1", new OpenApiInfo {
Title = "Shoppy.WebApi", Version = "v1"
});
c.EnableAnnotations();
c.DocumentFilter<OrderTagsDocumentFilter>();
});
Run Code Online (Sandbox Code Playgroud)
小智 6
您也可以使用这样的配置字符串来完成
app.UseSwaggerUI(c =>
{
c.ConfigObject.AdditionalItems.Add("tagsSorter", "alpha");
...
});
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2901 次 |
最近记录: |