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及 ...
随机推荐
- USACO Training Section 1.2 双重回文数 Dual Palindrom
题目描述 如果一个数从左往右读和从右往左读都是一样,那么这个数就叫做"回文数".例如,12321就是一个回文数,而77778就不是.当然,回文数的首和尾都应是非零的,因此0220就 ...
- Regex 正则表达式入门
0,什么是正则表达式 正则表达式(Regular Expression简写为Regex),又称为规则表达式,它是一种强大的文本匹配模式,其用于在字符串中查找匹配符合特定规则的子串. 正则表达式是独立于 ...
- 【Java8新特性】还没搞懂函数式接口?赶快过来看看吧!
写在前面 Java8中内置了一些在开发中常用的函数式接口,极大的提高了我们的开发效率.那么,问题来了,你知道都有哪些函数式接口吗? 函数式接口总览 这里,我使用表格的形式来简单说明下Java8中提供的 ...
- Bootstrap初识
目录 概述 快速入门 响应式布局 CSS样式和JS插件 全局CSS样式 组件 插件 案例:黑马旅游网 概述 概念:一个前端开发的框架,Bootstrap是美国Twitter公司的设计师Mark Ott ...
- LTE网络概述
LTE主要由两部分组成:无线接入技术演进(E-UTRAN)+系统架构演进(SAE):其中,SAE主要含有的是演进型分组交换核心网(EPC),其控制处理部分为移动性管理实体(MME),数据承载部分称为业 ...
- 李婷华 201771010113 《面向对象程序设计(java)》第一周学习总结
第一部分:课程准备部分 填写课程学习 平台注册账号, 平台名称 注册账号 博客园:www.cnblogs.com 薄荷蓝莓 程序设计评测:https://pintia.cn/ 1957877441@q ...
- 【Hadoop离线基础总结】Hue与Mysql集成
Hue与Mysql集成 1.修改hue.ini配置文件 这里要去掉#,打开mysql注释,大概在1547行 [[[mysql]]] nice_name="My SQL DB" en ...
- 【Hadoop离线基础总结】zookeeper的介绍以及集群环境搭建、网络编程和RPC的简单了解
ZooKeeper的介绍以及集群环境搭建.网络编程和RPC的简单了解 ZooKeeper介绍 概述 ZooKeeper是一个分布式协调服务的开源框架,主要用来解决分布式集群中应用系统的一致性问题.例如 ...
- Day_11【集合】扩展案例4_删除长度大于5的字符串,删除元素包含0-9数字的字符串
分析以下需求,并用代码实现 1.定义ArrayList集合,存入多个字符串 如:"ab1" "123ad" "bca" "dadf ...
- 简单服务发现协议(SSDP)编程指导
本文主要讲解如何使用ssdp进行编程,不涉及过多关于ssdp的理论知识 1. 前言 网上对ssdp理论介绍的一大把,缺乏从编程角度的一个指导,这里不会长篇大论ssdp理论,只是根据实际编码经验对用 ...