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及 ...
随机推荐
- FZU 1894 志愿者选拔
Problem 1894 志愿者选拔 Accept: 2308 Submit: 7003 Time Limit: 1500 mSec Memory Limit : 32768 KB Problem D ...
- Floyd —Warshall(最短路及其他用法详解)
一.多元最短路求法 多元都求出来了,单源的肯定也能求. 思想是动态规划的思想:从任意节点A到任意节点B的最短路径不外乎2种可能,1是直接从A到B,2是从A经过若干个节点X到B.所以,我们假设Dis(A ...
- JAVA大数--POJ 1715 大菲波数
Problem Description Fibonacci数列,定义如下: f(1)=f(2)=1 f(n)=f(n-1)+f(n-2) n>=3. 计算第n项Fibonacci数值. Inp ...
- MySQL Windows 环境安装
1.下载 MySQL Windows 安装包 下载地址:https://downloads.mysql.com/archives/installer/ 我这个是 MySQL 5.7 版本 2.直接双击 ...
- MySQL必知必会1-20章读书笔记
MySQL备忘 目录 目录 使用MySQL 检索数据 排序检索数据 过滤数据 数据过滤 用通配符进行过滤 用正则表达式进行搜索 创建计算字段 使用数据处理函数 数值处理函数 汇总数据 分组数据 使用子 ...
- 僵尸进程(zombie process)
首先了解一下linux中进程的5大状态: R Running or runnable (on run queue)S Interruptible sleep (waiting for an event ...
- centos8-django项目部署 nginx+uwsgi
1.虚拟环境virtualenv安装 1.安装virtualenv pip3 install virtualenv 2.创建目录,把项目文件传过来 mkdir My cd My 3.创建独立运行环境- ...
- CODING 敏捷实战系列课第二讲:Scrum 敏捷项目管理核心要素之 3355
Scrum 是敏捷开发流派中最著名和最落地的一支,全球 70% 以上公司的敏捷转型都是以 Scrum 起步.CODING 特邀敏捷顾问.CST & CTC 认证敏捷教练申健老师将在本课程< ...
- DHCP报文(1)
DHCP报文 1.地址申请类型(4步工作原理,常考) (1)此题是典型的四步工作原理,在其配置过程中由于没有分配IP地址,用的是广播形式,所以其4中报文类型的目的IP地址均为255.255.255.2 ...
- python 读hdf4文件,再转写成一个tif文件
1.安装pyhdf包 (1)通过此链接查找并下载pyhdf包:https://www.lfd.uci.edu/~gohlke/pythonlibs/#pygame(根据自己的系统及python版本选择 ...