asp.net core api使用Swagger
1、安装包:Swashbuckle.AspNetCore
2、在Startup的ConfigureServices方法里加入下面的代码
public void ConfigureServices(IServiceCollection services) { services.AddControllers(); services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_3_0); //注册Swagger生成器,定义一个和多个Swagger 文档 services.AddSwaggerGen(option => { option.SwaggerDoc("v1.0", new OpenApiInfo { Version = "v1.0", Title = "第一版 API", Description = "第一版 ASP.NET Core Web API" }); // 为 Swagger 设置xml文档注释路径 var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml"; var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile); option.IncludeXmlComments(xmlPath); }); services.AddMvc(x => x.EnableEndpointRouting = false); }
public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } app.UseRouting(); app.UseAuthorization(); app.UseEndpoints(endpoints => { endpoints.MapControllers(); }); app.UseSwagger(); app.UseSwaggerUI(c => { c.SwaggerEndpoint("/swagger/v1.0/swagger.json", "My Demo API (V 1.0)"); c.RoutePrefix = string.Empty; }); app.UseMvc(); }
注:代码中出现的版本号写法保持一直,v1与v1.0是不同的,并且v小写
3、绑定输出xml并【取消显示警告】1591
4、在【调试】中清空路径
5、直接运行