创建好项目先安装 Swashbuckle.AspNetCore 包
Startup类的ConfigureServices 方法中添加注册器
//注册Swagger生成器,定义一个和多个Swagger 文档
services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new Microsoft.OpenApi.Models.OpenApiInfo { Title = "My API", Version = "v1" });
});
然后在Configure
方法添加下面内容
//启用中间件服务生成Swagger作为JSON终结点
app.UseSwagger();
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
c.RoutePrefix = string.Empty;
});
运行起来url后面加上/index.html就可以了
添加了一个带读写的控制器后运行也是可以的
然后我们可以给不同请求和其参数添加注释功能,右击项目属性,然后点生成
然后还是给 Startup的ConfigureServices方法添加下面内容
var basePath = Path.GetDirectoryName(typeof(Program).Assembly.Location);//获取应用程序所在目录(绝对,不受工作目录影响,建议采用此方法获取路径)
var xmlPath = Path.Combine(basePath, "项目名.xml");
c.IncludeXmlComments(xmlPath);
回到我们某个控制器的方法下面
/// <summary>
/// 这是一个带参数的get请求
/// </summary>
/// <remarks>
/// 请求范例:
/// api/User/5
/// </remarks>
/// <param name="id">主键</param>
/// <returns>返回结果</returns>
// GET: api/User/5
[HttpGet("{id}", Name = "Get")]
看吧
然后可以把默认页设为 index.html