一、安装
新建一个没有身份验证的mvc项目 - SwaggerMvc5Demo,然后添加一个名为Remote(自定义)且包含基础读写(不想手写)的ApiController
![](https://i-blog.csdnimg.cn/blog_migrate/77802a463070042c454cacc3a997f6d6.png)
使用以下方法来添加 Swashbuckle:
- 从“程序包管理器控制台”窗口:Install-Package Swashbuckle -Version 5.6.0
- 从“管理 NuGet 程序包”对话框中:
-
- 右键单击“解决方案资源管理器” > “管理 NuGet 包”中的项目
- 将“包源”设置为“nuget.org”
- 在搜索框中输入“Swashbuckle”
- 从“浏览”选项卡中选择“Swashbuckle”包,然后单击“安装”
二、配置
1.项目属性->勾选生成xml文档文件
![](https://i-blog.csdnimg.cn/blog_migrate/0136be1b4214a895114488d816b49dfc.png)
2.添加导航链接
在_Layout.cshtml文件中添加代码
<li>@Html.ActionLink("Swagger Help", "", "Swagger", new { area = "" }, null)</li>
3.修改SwaggerConfig.cs文件
安装完成后,在文件夹App_Start自动生成一个配置文件 swagger.config。这里可以做多版本控制,定义扩展功能,自定义显示ui的样式脚本,可以配置过滤、权限等。
例如:
(1)为接口添加xml注释
string path = string.Format("{0}/bin/SwaggerMvc5Demo.XML", System.AppDomain.CurrentDomain.BaseDirectory);
c.IncludeXmlComments(path);
使用前
![](https://i-blog.csdnimg.cn/blog_migrate/89c4290d8dc65184d807540f32ff72ad.png)
使用后
![](https://i-blog.csdnimg.cn/blog_migrate/656da0cb1a5ef9254caeb719dc82da2d.png)
(2)使用特性 [Obsolete]
在config中 开启 c.IgnoreObsoleteProperties();
![](https://i-blog.csdnimg.cn/blog_migrate/dda457aa4c1c94f2a972816bac474645.png)
三、调用
1.直接调用
只要输入参数id,即可调用,非常方便
![](https://i-blog.csdnimg.cn/blog_migrate/c0e64f3973b42990bd77323ea6ee1582.png)
2.AutoRest
AutoRest (
https://github.com/Azure/AutoRest), 简单来说,就是一个EXE工具,可以根据Swagger的结构生成服务的客户端,这个客户端可以让你像调用本地方法一样调用服务,方法内部包装了Http请求。
扩展:ABP集成swagger
参考文章: