一、目的:記錄搭建帶有Swagger的WebApi過程
二、環境:
1、VS2019
2、.NetCore3.0
三、效果
四、過程
1、添加包:Swashbuckle.AspNetCore 選擇最新預覽版本:5.0.0-rc4 注意不選此版本會報錯誤
2、添加包:Microsoft.OpenApi 1.1.4
3、public void ConfigureServices(IServiceCollection services)
{
services.AddControllers();
// Do:註冊Swagger生成器並初始化一個或多個文檔
services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new OpenApiInfo { Title = "My API", Version = "v1" });
// Do:增加說明文檔
var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml";
var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile);
c.IncludeXmlComments(xmlPath);
});
}
4、 public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
// Do:啓用中間件服務Swagger
app.UseSwagger();
// Do:啓用中間件服務swagger-ui
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API");
c.RoutePrefix = string.Empty;
});
app.UseRouting();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllers();
});
}
5、項目-屬性-調試-啓動項目瀏覽器
6、項目-屬性-生成-生成XML文檔