.net webapi 基础配置,项目名字,版本信息
1. 再Program.cs 文件中添加
using WebApplication1.Webapi.Utility.ApiVersions; var builder = WebApplication.CreateBuilder(args); // Add services to the container. builder.Services.AddControllers(); // Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle builder.Services.AddEndpointsApiExplorer(); builder.Services.AddSwaggerGen(options => { typeof(ApiVersions).GetEnumNames().ToList().ForEach(version => { options.SwaggerDoc(version, new Microsoft.OpenApi.Models.OpenApiInfo() { Title = "xxxxxxxxApi接口文档", Version = version, Description= "coreApi版本"+ version }) ; }); }); var app = builder.Build(); // Configure the HTTP request pipeline. if (app.Environment.IsDevelopment()) { app.UseSwagger(); app.UseSwaggerUI(option => { foreach(string version in typeof(ApiVersions).GetEnumNames().ToList()) { option.SwaggerEndpoint($"/swagger/{version}/swagger.json", $"xxxxx平台【{version}】版本"); } }); } app.UseHttpsRedirection(); app.UseAuthorization(); app.MapControllers(); app.Run();
2. 第二部
//设置当前是属于那个版本 [ApiExplorerSettings(IgnoreApi = false, GroupName = nameof(ApiVersions.V1))]
------------------------------------------------------------------------下面的是简化配置---------------------------------------------------------------------------------------
1. 在 Program.cs 文件中, var app = builder.Build(); 语句之前添加
//注册swagger服务 builder.Services.AddSwaggerGen(m => { //第一个参数"后端提供的版本号,自己定义" //Title: 项目的名字 //Version: 当前项目的版本 m.SwaggerDoc("v1", new OpenApiInfo { Title= "swaggerTest" , Version= "v1"}); });
2. 在var app = builder.Build();语句之后添加
app.UseSwagger(); app.UseSwaggerUI(c => { //第一个参数:设置生成的json地址 //v1 必须对应注册swagger服务后端提供的版本号一致 //第二个参数: 名称 c.SwaggerEndpoint("/swagger/v1/swagger.json","swaggerTest"); ;});
3.完整代码如下
using Microsoft.OpenApi.Models; var builder = WebApplication.CreateBuilder(args); // Add services to the container. builder.Services.AddControllers(); // Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle builder.Services.AddEndpointsApiExplorer(); //注册swagger服务 builder.Services.AddSwaggerGen(m => { //第一个参数"后端提供的版本号,自己定义" //Title: 项目的名字 //Version: 当前项目的版本 m.SwaggerDoc("v1", new OpenApiInfo { Title= "swaggerTest" , Version= "v1"}); }); var app = builder.Build(); // Configure the HTTP request pipeline. if (app.Environment.IsDevelopment()) { app.UseSwagger(); app.UseSwaggerUI(); } app.UseSwagger(); app.UseSwaggerUI(c => { //第一个参数:设置生成的json地址 //v1 必须对应注册swagger服务后端提供的版本号一致 //第二个参数: 名称 c.SwaggerEndpoint("/swagger/v1/swagger.json","swaggerTest"); ;}); app.UseAuthorization(); app.MapControllers(); app.Run();
配置启动项默认打开界面: 在 Properties 文件夹下打开 launchSettings.json