Swagger 中未显示方法文档摘要 UI

Summary of the method documentation is not showing in Swagger UI

我已经在摘要标签中添加了内容,但它没有显示在 .NET 6 Web Api 项目的 swagger ui 中。

    /// <summary>
    /// Check if the trading account already closed
    /// </summary>
    /// <param name="nric">xxxxxx-xx-xxxx</param>
    /// <returns></returns>
    [HttpGet]
    public async Task<ActionResult> IsAccountClosed(string nric)
    {
     // code is removed for brevity
    }

这是 Program.cs

中的默认代码
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();

var app = builder.Build();

// Configure the HTTP request pipeline.
if (app.Environment.IsDevelopment())
{
    app.UseSwagger();
    app.UseSwaggerUI();
}

但在 .NET Core 3.1 Web Api 项目中,它显示了。

这是对我有效的方法(在示例 .NET 6 Web Api 项目中):

  1. 转到项目的属性 => 构建 => 常规 => 输出部分 => 勾选复选框 'XML Documentation file'

  2. 通过添加以下内容编辑 AddSwaggerGen 服务配置:

builder.Services.AddSwaggerGen(c =>
{
   ...

   var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml";
   var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile);
   c.IncludeXmlComments(xmlPath);
});

概念验证:

这种方法对你有用吗?