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(),
});
}
}
}
}