using Microsoft.AspNetCore.Mvc.ApiExplorer; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Options; using Swashbuckle.AspNetCore.SwaggerGen; using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; namespace LangGuan.Configuration { /// /// 版本控制 /// public class SwaggerConfigureOptions : IConfigureOptions { private readonly IApiVersionDescriptionProvider _provider; /// /// provider /// /// public SwaggerConfigureOptions(IApiVersionDescriptionProvider provider) => _provider = provider; /// /// config /// /// public void Configure(SwaggerGenOptions options) { foreach (var desc in _provider.ApiVersionDescriptions) { options.SwaggerDoc(desc.GroupName, new Microsoft.OpenApi.Models.OpenApiInfo { Title = "LangGuan Api", Version = desc.ApiVersion.ToString(), }); } } } }