asp.net core webapi swagger 使用二

上一篇文章介绍了swagger的基本使用,这篇文章主要说一下 swagger的自定义的一些使用


下图是上一篇文章的结果:


如果想改变 背景颜色以及 swagger logo的超链接 怎么办呢?这就是本篇文章主要说的问题

改变颜色和超链接,那肯定得用到css js了。那么asp.net core 的静态文件应该放在什么地方呢?

对了,就是放在 wwwroot 文件目录下,在此处我增加了 两个文件 custom.css 和custom.js,如下图所示



但是怎么使用这些文件呢,在2.0以后,microsoft团队在Programde BuildWebHost中的WebHost.CreateDefaultBuilder中做了默认配置,但是从源码来看,并没有配置 读取 静态资源的配置,详见github https://github.com/AlbertBJ/MetaPackages/blob/dev/src/Microsoft.AspNetCore/WebHost.cs#L148

所以如果我们想要 使用这些静态资源,必须手动在startup的configure中手动添加app.useStaticFiles();

如下图所示:

截止目前,已经可以读取文件了,如上图,我增加的两个文件,但是怎么让其对swagger生效呢?

看下图,增加两行代码即可


下面说一下custom.css文件,具体你需要修改那些样式,自己F12找一下,下面是我的css文件


需要注意的是,为了确保自己添加的css能够生效 都加上!important吧,这是权重问题

js同样道理:

//上面 区分swagger版本是利用在每个action上添加,有时会显的比较麻烦,可以参考官方的方法,利用namespace来区分版本,详见  https://github.com/domaindrivendev/Swashbuckle.AspNetCore#assign-actions-to-documents-by-convention

本文源码:https://github.com/AlbertBJ/aspDotNetSwagger