You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET Core Web API中如何在Swagger UI设置输入示例?

在.NET Core中为Swagger UI 3.0的字符串属性添加示例指引

当然可以实现,以下是几种在.NET Core里给Swagger UI的ColumnAndSortOrder属性添加示例的常用方法:

方法1:使用Swagger注解

首先确保你安装了Swashbuckle.AspNetCore.Annotations NuGet包,然后直接在模型属性上添加[SwaggerSchema]注解指定示例:

using Swashbuckle.AspNetCore.Annotations;

public class YourRequestModel
{
    [SwaggerSchema(Example = "Resource, Asc")]
    public string ColumnAndSortOrder { get; set; }
}

接着在Program.cs(或Startup.cs)的Swagger配置中启用注解支持:

builder.Services.AddSwaggerGen(c =>
{
    c.EnableAnnotations();
});

方法2:通过XML注释添加示例

给属性添加包含<example>标签的XML注释:

/// <summary>
/// 指定排序的列名和顺序
/// </summary>
/// <example>Resource, Asc</example>
public string ColumnAndSortOrder { get; set; }

然后在Swagger配置中启用XML注释解析(需要先在项目属性里开启"生成XML文档文件"):

var xmlFileName = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml";
var xmlFilePath = Path.Combine(AppContext.BaseDirectory, xmlFileName);

builder.Services.AddSwaggerGen(c =>
{
    c.IncludeXmlComments(xmlFilePath);
});

方法3:使用SchemaFilter自定义配置

如果需要更灵活的控制,可以创建一个自定义的ISchemaFilter:

using Microsoft.OpenApi.Models;
using Swashbuckle.AspNetCore.SwaggerGen;

public class ColumnAndSortOrderExampleFilter : ISchemaFilter
{
    public void Apply(OpenApiSchema schema, SchemaFilterContext context)
    {
        // 匹配目标模型和属性
        if (context.Type == typeof(YourRequestModel) 
            && schema.Properties.TryGetValue("columnAndSortOrder", out var propertySchema))
        {
            propertySchema.Example = new OpenApiString("Resource, Asc");
        }
    }
}

然后在Swagger配置中注册这个Filter:

builder.Services.AddSwaggerGen(c =>
{
    c.SchemaFilter<ColumnAndSortOrderExampleFilter>();
});

以上任意一种方法都能让Swagger UI 3.0在ColumnAndSortOrder属性下方显示指定的示例文本,帮助用户理解输入格式。

内容的提问来源于stack exchange,提问作者Aԃιƚყα Gυɾαʋ

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 19:18:19