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框架网 - 开发框架文库

相关推荐
|晴 天|16 分钟前
Vue 3 + TypeScript + Element Plus 博客系统开发总结与思考
前端·vue.js·typescript
wuqingshun31415922 分钟前
说说mybatis的缓存机制
java·缓存·mybatis
空中海1 小时前
Kubernetes 生产实践、可观测性与扩展入门
java·贪心算法·kubernetes
猫3281 小时前
v-cloak
前端·javascript·vue.js
旷世奇才李先生1 小时前
Vue 3\+Vite\+Pinia实战:企业级前端项目架构设计
前端·javascript·vue.js
Devin~Y1 小时前
大厂Java面试实录:Spring Boot/Cloud、Kafka、Redis、K8s 与 Spring AI(RAG/Agent)三轮连环问
java·spring boot·redis·mysql·spring cloud·kafka·kubernetes
bLEd RING1 小时前
SpringBoot3.3.0集成Knife4j4.5.0实战
java
小松加哲2 小时前
Spring MVC 核心原理全解析
java·spring·mvc
Ulyanov2 小时前
《PySide6 GUI开发指南:QML核心与实践》 第二篇:QML语法精要——构建声明式UI的基础
java·开发语言·javascript·python·ui·gui·雷达电子对抗系统仿真
码界筑梦坊2 小时前
357-基于Java的大型商场应急预案管理系统
java·开发语言·毕业设计·知识分享