Swagger自动生成API接口注释和实体模型注释

Swagger生成API接口注释、实体模型注释

目录

前言

多位用户问我swagger注释生成的问题,这次写了篇最全面的分享给大家。

先看下swagger页面:

Swagger页面预览

控制器 api 接口注释

包括标题、内容、接口注释:

接口参数注释

模型的注释

解决方案

生成->输出->生成包含API文档的文件

WebApi Project项目右键属性,生成->输出->生成包含API文档的文件

重要:如果要生成实体模型的API文档文件,同样在实体模型Project项目右键属性,生成->输出->生成包含API文档的文件。

C#代码

C#

复制代码
builder.Services.AddSwaggerGen(options =>
{
    options.SwaggerDoc("v1", new OpenApiInfo
    {
        Version = "v1",
        Title = "CSFramework.License",
        Description = "软件授权系统API接口文档 \r\nCopyrights@2024 www.csframework.com"
    });

    //控制器接口注释
    var xmlFileName = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml";
    var xmlFilePath = Path.Combine(AppContext.BaseDirectory, xmlFileName);
    options.IncludeXmlComments(xmlFilePath, true);

    //实体注释
    var xmlModelFileName = $"{Assembly.Load("CSFramework.LicenseServerCore").GetName().Name}.xml";
    var xmlModelFilePath = Path.Combine(AppContext.BaseDirectory, xmlModelFileName);
    options.IncludeXmlComments(xmlModelFilePath, true);
});

专注.NET技术、C/S架构开发框架软件

C/S框架网 - 开发框架文库

相关推荐
IT_陈寒34 分钟前
Vite的静态资源打包让我熬夜到三点,这坑千万别跳
前端·人工智能·后端
小bo波1 小时前
使用Thread子类创建线程 VS 使用Runnable接口创建线程的区别
java·多线程·thread·并发编程·runnable
徐小夕1 小时前
万字拆解 JitWord:企业级实时协同文档底层架构 + 大模型 AI 融合完整实践
前端·vue.js·github
一份执念1 小时前
uni-app 小程序分包限制处理与主包体积优化实战
前端·微信小程序
SamDeepThinking1 小时前
高并发场景下,CompletableFuture与ForkJoinPool该如何取舍?
java·后端·面试
MariaH2 小时前
初识MySQL
前端
陳陈陳2 小时前
从Token到Embedding:一篇文章搞懂大模型的「文字数学变形记」
前端·javascript·ai编程
十有八七2 小时前
AI时代的置身X内
前端·人工智能
橘子星2 小时前
LLM 无状态架构实践:从原理到代码落地
前端·javascript·人工智能
LiuMingXin2 小时前
意图与代码之间:AI编程范式全景解读
前端·后端·面试