NET 6.0 Swagger API 自动生成MarkDown文档

简介

SwaggerDoc 是基于 Swashbuckle.AspNetCore 类库的离线文档生工具。文档以 JSON 结构描述参数说明,支持枚举类型描述。工具导出 Markdown 格式文件,可以根据自己需求再将 Markdown 文件转换为自己所需要的文件格式。

项目地址:https://github.com/liuweichaox/SwaggerDoc

1、SwaggerDoc引用

.NET CLI

dotnet add package SwaggerDoc --version 1.0.1

2、Startup配置

注册 SwaggerDoc 服务

services.AddSwaggerDoc();//(用于MarkDown生成)

注册 Swagger 服务

services.AddSwaggerGen(c =>
{
	c.SwaggerDoc("v1", new OpenApiInfo {Title = "Swagger API 文档", Version = "v1", Description = "API 文档"});
	// 添加枚举过滤器,在文档中显示枚举的描述信息
	c.DocumentFilter<SwaggerEnumFilter>(new object[]
	{
		// 枚举所在的程序集
		new[] {Assembly.GetExecutingAssembly()}
	});
	c.IncludeXmlComments("Samples.xml");
});

引用 Swagger中间件

app.UseSwagger();
app.UseSwaggerUI(c => c.SwaggerEndpoint("/swagger/v1/swagger.json", "Samples v1"));

3、生成MarkDown

Get 访问 https://{localhost}:{port}/doc?swaggerVersion={swaggerVersion}

说明:swaggerVersion 是 swagger 文档版本(AddSwaggerGen 中的 Version 参数,默认 v1)

4、生成示例

这里用的是 typora 编辑器,下载 pandoc 插件可以实现Marddown格式转换为PDF功能(免费)

如果需要样式调整,可以去https://theme.typora.io/ 选

Swagger文档

api.png

离线PDF文档

swagger.png

posted @   刘大大。  阅读(2370)  评论(4编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示
主题色彩