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

相关推荐
恋猫de小郭6 小时前
Flutter THLC 的 WebView 滚动终于从 70 FPS 提升到 120 FPS
android·前端·flutter
这个昵称不容易7 小时前
旅游管理系统的设计与实现(SpringBoot + MySQL + Vue 前后端分离)
java·springboot·毕设
Rain的Java大神之路7 小时前
LeetCode 37 解数独面试攻略:回溯 + 位掩码 + MRV,从暴力到毫秒级求解
java·后端·leetcode
千舟软件7 小时前
报修系统对接企业微信和钉钉的3种方式_千舟报修云
服务器·钉钉·企业微信
Jeff-Tsai7 小时前
Day 15:API 契约分层与类型注册表
.net·架构设计·erp·definition-driven
1-1=07 小时前
C# 数据结构和特殊类型
数据结构·c#·.net·.netcore
严肃小白兔7 小时前
TanStack Router 更新构建工具链:Node.js 兼容性、路由分割与前端工程实践
前端·node.js·状态模式
IT_陈寒7 小时前
Vue这个奇葩的响应式问题让我加班到凌晨
前端·人工智能·后端
天天被压力8 小时前
【A股分钟级高频数据完全手册 #11】券商实时行情数据接口:实时交易(券商源)接入与字段
java·人工智能·python
风骏时光牛马8 小时前
功能可用性自动化测试验证
前端