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 项目中):
转到项目的属性 => 构建 => 常规 => 输出部分 => 勾选复选框 'XML Documentation file'
通过添加以下内容编辑 AddSwaggerGen
服务配置:
builder.Services.AddSwaggerGen(c =>
{
...
var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml";
var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile);
c.IncludeXmlComments(xmlPath);
});
概念验证:
这种方法对你有用吗?
我已经在摘要标签中添加了内容,但它没有显示在 .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 项目中):
转到项目的属性 => 构建 => 常规 => 输出部分 => 勾选复选框 'XML Documentation file'
通过添加以下内容编辑
AddSwaggerGen
服务配置:
builder.Services.AddSwaggerGen(c =>
{
...
var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml";
var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile);
c.IncludeXmlComments(xmlPath);
});
概念验证:
这种方法对你有用吗?