Magicodes.SwaggerUI 已支持.NET Core 3.1
Magicodes.SwaggerUI
通过配置文件简单配置即可快速完成SwaggerUI的配置,包括:
- SwaggerUI的文档信息
- API分组
- API隐藏
- API JSON生成(枚举、API架构Id)
- 验证
- 自定义页面
支持.NET Core 2.2和3.1。版本日志和使用教程见下文。
注意:AddCustomSwaggerGen和UseCustomSwaggerUI已分别替换为“AddMagicodesSwaggerGen”、“UseMagicodesSwaggerUI”。
更新日志
2020.03.07
- 【Nuget】Magicodes.SwaggerUI 3.0.2
- 【升级】支持.NET Core 3.1
- 【重构】支持自定义逻辑编写:
- AddMagicodesSwaggerGen添加Action<SwaggerGenOptions, SwaggerConfigInfo>参数,可以实现自定义逻辑
- UseMagicodesSwaggerUI添加Action<SwaggerUIOptions, SwaggerConfigInfo>参数,可以实现自定义逻辑
2019.10.21
- 【Nuget】Magicodes.SwaggerUI 2.0.4
- 【升级】单个文档不分组,显示所有API
- 【梳理】梳理目录结构
- 【修复】修复本地开发环境运行时不加载文档注释的问题
- 【修改】自动移除GroupUrlPrefix的前后空格以及“/”前缀
- 【升级】在全局隐藏API的基础上,支持分组API隐藏
- 【升级】API隐藏支持HTTP方法配置,默认“*”
2019.10.19
- 【升级】支持API分组,支持非侵入式配置,无需修改代码,仅通过配置即可完成API分组(见下面示例)
- 【重构】重构整体逻辑
Demo
配置Demo
"SwaggerDoc": {
"IsEnabled": "true",
//将枚举值以字符串显示
"DescribeAllEnumsAsStrings": false,
"SwaggerDocInfos": [
{
"IsEnabled": "true",
"Title": "APP1 API文档",
"Version": "v1",
"GroupName": "App1",
"Description": "",
"Contact": {
"Name": "心莱科技Team1",
"Email": "xinlai@xin-lai.com"
},
"GroupUrlPrefix": "api/app1/"
},
{
"IsEnabled": "true",
"Title": "APP2 API文档",
"Version": "v2",
"GroupName": "App2",
"Description": "",
"Contact": {
"Name": "心莱科技Team2",
"Email": "xinlai@xin-lai.com"
},
"GroupUrlPrefix": "api/app2/",
"HiddenApi": {
"IsEnabled": "true",
"Urls": [
{
"Url": "app2/Values/{id}",
"HttpMethod": "Delete"
}
]
}
}
],
"HiddenApi": {
"IsEnabled": "true",
"Urls": [
{ "Url": "app1/Values/{id}" }
]
},
"UseFullNameForSchemaId": "false"
}
注入代码:
//添加自定义API文档生成(支持文档配置)
public IServiceProvider ConfigureServices(IServiceCollection services)
{
services.AddMagicodesSwaggerGen(_appConfiguration);
} public void Configure(IApplicationBuilder app, ILoggerFactory loggerFactory)
{
//启用自定义API文档(支持文档配置)
app.UseMagicodesSwaggerUI(_appConfiguration);
}
特点
- 通过配置文件简单配置即可完成SwaggerUI的API格式JSON生成和集成

- 支持API分组和隐藏


- 支持自定义页面和验证
Nuget包
| 名称 | Nuget |
|---|---|
| Magicodes.SwaggerUI |
Magicodes Nuget包推荐
相关Nuget包
| 名称 | 说明 | Nuget | GitHUb |
|---|---|---|---|
| Magicodes.IE.Excel | Excel导入导出 | dotnetcore/Magicodes.IE | |
| Magicodes.IE.Core | 导入导出核心库 | dotnetcore/Magicodes.IE | |
| Magicodes.IE.HTML | HTML导入导出 | dotnetcore/Magicodes.IE | |
| Magicodes.IE.Pdf | Pdf导出 | dotnetcore/Magicodes.IE | |
| Magicodes.IE.Word | Word导出 | dotnetcore/Magicodes.IE | |
| Magicodes.IE.Csv | Csv导入导出 | dotnetcore/Magicodes.IE | |
| Magicodes.WeChat.MiniProgram | 小程序SDK | Magicodes.WxMiniProgram.Sdk | |
| Magicodes.Sms.Aliyun | 阿里云短信 | xin-lai/Magicodes.Sms | |
| Magicodes.Sms.Core | 短信核心库 | xin-lai/Magicodes.Sms | |
| Magicodes.Sms.Aliyun.Abp | 阿里云短信Abp模块 | xin-lai/Magicodes.Sms | |
| Magicodes.Storage.Core | 通用存储核心库 | xin-lai/Magicodes.Storage | |
| Magicodes.Storage.AliyunOss.Core | 阿里云OSS存储 | xin-lai/Magicodes.Storage | |
| Magicodes.Storage.Local.Core | 本地存储 | xin-lai/Magicodes.Storage | |
| Magicodes.Storage.Tencent.Core | 腾讯云存储 | xin-lai/Magicodes.Storage | |
| Magicodes.Storage.Abp.Core | 通用存储ABP模块集成 | xin-lai/Magicodes.Storage | |
| Magicodes.WeChat.SDK.Core | 微信SDK | xin-lai/Magicodes.WeChat.SDK | |
| Magicodes.SwaggerUI | SwaggerUI API快速配置和分组 | xin-lai/Magicodes.SwaggerUI | |
| Magicodes.Pay.Alipay | 支付宝支付库 | xin-lai/Magicodes.Pay | |
| Magicodes.Pay.Notify | 支付通用回调库 | xin-lai/Magicodes.Pay | |
| Magicodes.Pay.Wxpay | 微信支付库 | xin-lai/Magicodes.Pay | |
| Magicodes.Pay.Alipay.Global | 国际支付宝支付库 | xin-lai/Magicodes.Pay | |
| Magicodes.Pay.Allinpay | 通联支付库 | xin-lai/Magicodes.Pay | |
| Magicodes.Pay.Abp | ABP 支付通用封装库 | xin-lai/Magicodes.Pay | |
| Magicodes.Pay.Abp.Allinpay | ABP 通联支付模块 | xin-lai/Magicodes.Pay | |
| Magicodes.Pay.Abp.Wxpay | ABP 微信支付模块 | xin-lai/Magicodes.Pay | |
| Magicodes.Pay.Alipay.Global | ABP 国际支付宝模块 | xin-lai/Magicodes.Pay | |
| Magicodes.Pay.Alipay | ABP 支付宝模块 | xin-lai/Magicodes.Pay | |
| Magicodes.Abp.Castle.NLog | ABP Nlog支持模块 | xin-lai/Abp.Castle.NLog | |
| Magicodes.WxMiniProgram.Sdk | 微信小程序SDK | xin-lai/Magicodes.WxMiniProgram.Sdk | |
| Magicodes.WxMiniProgram.Sdk.Abp | 微信小程序SDK Abp模块 | xin-lai/Magicodes.WxMiniProgram.Sdk | |
| Magicodes.Dingtalk.SDK | 钉钉SDK | xin-lai/Magicodes.Dingtalk.SDK | |
| Magicodes.DynamicSqlApi.Core | 根据SQL自动解析生成动态API | Magicodes.DynamicSqlApi | |
| Magicodes.DynamicSqlApi.All | 根据SQL自动解析生成动态API | Magicodes.DynamicSqlApi | |
| Magicodes.DynamicSqlApi.CsScript | 根据SQL自动解析生成动态API | Magicodes.DynamicSqlApi | |
| Magicodes.DynamicSqlApi.Dapper | 根据SQL自动解析生成动态API | Magicodes.DynamicSqlApi | |
| Magicodes.DynamicSqlApi.SqlServer | 根据SQL自动解析生成动态API | Magicodes.DynamicSqlApi |
联系我们
其他开源库
Magicodes.SwaggerUI 已支持.NET Core 3.1的更多相关文章
- Magicodes.Pay已支持Volo Abp
Magicodes.Pay已支持Volo Abp 简介 Magicodes.Pay希望打造一个统一支付库,相关库均使用.NET标准库编写,支持.NET Framework以及.NET Core.目前已 ...
- 开源:Taurus.MVC 框架 (已支持.NET Core)
为什么要创造Taurus.MVC: 记得被上一家公司忽悠去负责公司电商平台的时候,情况是这样的: 项目原版是外包给第三方的,使用:WebForm+NHibernate,代码不堪入目,Bug无限,经常点 ...
- Magicodes.IE已支持导出Word、Pdf和Html
关于Magicodes.IE 导入导出通用库,通过导入导出DTO模型来控制导入和导出,支持Excel.Word.Pdf和Html. GitHub地址:https://github.com/xin-la ...
- 开源:ASP.NET Aries 开发框架(已支持.NET Core)
前言: 随着岁月的推进,不知不觉已在.NET这领域上战斗了十年了. 青春还没来得急好好感受,却已是步入健忘之秋的老人一枚了. 趁着还有点记忆,得赶紧把硬盘里那私藏的80G除外的东西,和大伙分享分享. ...
- ASP.NET Aries 开发框架(已支持.NET Core)
背景: 当年,在卖弄与开源QBlog时,也曾想过把QBlog的开发理念整理整理,独立一个框架来开源. 不过,人越长大就越憔悴,激情终敌不过疲惫的惰性,最终无痕而终,连3.0的版本也没开源出来. 关于框 ...
- MySQL官方.NET Core驱动已出,支持EF Core
千呼万唤始出来MySQL官方.NET Core驱动已出,支持EF Core. 昨天MySQL官方已经发布了.NET Core 驱动,目前还是预览版,不过功能已经可用. NuGet 地址:https:/ ...
- NET Core驱动已出,支持EF Core
NET Core驱动已出,支持EF Core 千呼万唤始出来MySQL官方.NET Core驱动已出,支持EF Core. 昨天MySQL官方已经发布了.NET Core 驱动,目前还是预览版,不过功 ...
- [开源].NET高性能框架Chloe.ORM-完美支持.NET Core
扯淡 这是一款轻量.高效的.NET C#数据库访问框架(ORM).查询接口借鉴 Linq(但不支持 Linq).借助 lambda 表达式,可以完全用面向对象的方式就能轻松执行多表连接查询.分组查询. ...
- CYQ.Data 正式支持 DotNET Core 版本发布
闲话几句: 自从上周开始,IOS人员逝去,就开始接手IOS的代码了. 并开始整理IOS的代码(包括当时一开始设计的开发框架). 在未来不远的日子里,设想是有一个系列详细的介绍I恋App和IT连App及 ...
随机推荐
- IIS6服务器的请求流程(图文&源码)
1.IIS 7开发与管理完全参考手册 http://book.51cto.com/art/200908/146040.htm 2.Web服务IIS 6 https://technet.micro ...
- echarts自定义tooltip显示
使用echarts展示图形的时候,鼠标滑倒图像上,想展示除了系列名,数据名,数据值以外的数据,这时需要使用tooltip的fommater方式进行配置,另外对数据格式也有一定的要求. 如图所示:如果想 ...
- Dubbo(六):zookeeper注册中心的应用
Dubbo中有一个非常本质和重要的功能,那就是服务的自动注册与发现,而这个功能是通过注册中心来实现的.而dubbo中考虑了外部许多的注册组件的实现,zk,redis,etcd,consul,eurek ...
- xenomai内核解析之嵌入式实时linux概述
Linux系统作为一个GPOS(通用操作系统)发展至今已经非常成熟可靠了,并且由于遵循GPL协议,开放所有系统源代码,非常易于裁剪.更重要的是,与其他开源的GPOS或RTOS相比,Linux系统支持多 ...
- 给springboot增加XSS跨站脚本攻击防护功能
XSS原理 xss攻击的原理是利用前后端校验不严格,用户将攻击代码植入到数据中提交到了后台,当这些数据在网页上被其他用户查看的时候触发攻击 举例:用户提交表单时把地址写成:山东省济南市<scri ...
- C语言设计实验报告(二)
C程序设计实验报告姓 名:赖瑾 实验地点:家 实验时间:2020年3月9日 实验项目:2.3.3 字符与ASCLL码 2.3.4 运算符与表达式的运用 2.3.5 顺序结构应用程序 3.3.1 数学函 ...
- 王颖奇 201771010129《面向对象程序设计(java)》第七周学习总结
实验七 继承附加实验 实验时间 2018-10-11 1.实验目的与要求 (1)进一步理解4个成员访问权限修饰符的用途: A.仅对本类可见-private B.对所有类可见-public C.对本包和 ...
- 【matlab 基础篇 02】基础知识一键扫盲,看完即可无障碍编程(超详细+图文并茂)
博主快速入门matlab,系统地整理一遍,如何你和我一样是一个新手,那么此文很适合你: 本人能力有限,文中难免有错误和纰漏之处,请大佬们不吝赐教 创作不易,如果本文帮到了您: 请帮忙点个赞
- R语言:日薪和应发工资
生产部门普通员工为日薪,有时要知道日薪和应发工资的转换关系.做表一为日薪取整数,白天工资+晚上工资=应发工资,延长工作时间取时薪的1.5倍,应发工资保留到十位.做表二为应发工资取十的倍数,推算相应日薪 ...
- 用python爬了厦门人才网的.net岗位
为了看看.net的就业行情怎么样,用python爬取了厦门人才网.net岗位的信息,话不多说上代码,python没学多久,如果有什么不妥请指正 import requests from bs4 imp ...