ASP .NET CORE优雅地使用Swagger 并生成接口文档
1.生成文档文件
注意:所有接口引用到的类库都要生成否则会注释不全
2.让Swagger加载文档文件
static List<string> XmlCommentsFilePath
{
get
{
var basePath = PlatformServices.Default.Application.ApplicationBasePath;
DirectoryInfo d = new DirectoryInfo(basePath);
FileInfo[] files = d.GetFiles("*.xml");
var xmls = files.Select(a => Path.Combine(basePath, a.FullName)).ToList();
return xmls;
}
}
public static class SwaggerGenSetUp
{
/// <summary>
/// Swagger注释
/// </summary>
/// <param name="services"></param>
public static void AddSwaggerGenSetUp(this IServiceCollection services)
{
services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new OpenApiInfo { Title = "北向接口调用示例", Version = "v1" });
var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.XML";
var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile);
//让swagger加载所有的xml 文档文件****
foreach (var item in XmlCommentsFilePath)
{
c.IncludeXmlComments(item);
}
});
services.AddScoped<SwaggerGenerator>();
}
}
3.加载swagger设置
//swagger设置
builder.Services.AddSwaggerGenSetUp();
4.将swagger.json转换成word文档
使用json转doc文档工具
https://tools.kalvinbg.cn/dev/swagger2word
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战