首先,需要在Startup类中添加Swagger服务的配置。具体的示例代码如下:
using Microsoft.OpenApi.Models;
// ...
public void ConfigureServices(IServiceCollection services)
{
services.AddControllers();
services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new OpenApiInfo { Title = "My API", Version = "v1" });
});
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
// ...
app.UseSwagger();
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
});
// ...
}
在这个示例代码中,我们首先在ConfigureServices方法中使用AddSwaggerGen方法来配置Swagger服务。这个方法需要一个Action参数,我们在其中指定了文档的版本信息。
然后,在Configure方法中,我们使用UseSwagger和UseSwaggerUI方法将Swagger服务挂载到应用程序的管道中。
接下来,在Controller的类上添加[ApiController]和[Route]特性,以确保API的路由被正确设置。示例代码如下:
[ApiController]
[Route("[controller]")]
public class MyController : ControllerBase
{
// ...
}
最后,添加[HttpGet]或其他相关的特性来标记需要暴露的API方法。示例代码如下:
[HttpGet]
public IActionResult Get()
{
// ...
}
这些步骤完成后,重新启动应用程序并访问 http://{host}:{port}/swagger/v1/swagger.json,你将能够看到生成的Swagger文档。