Asp.Net Mvc WebApi集成Swagger
看到好多都用Swagger生成API文档,但是在网上找了几个blog根据写了之后,发现一下坑,现记录下来
1、新建一个项目,SwaggerMvc5Demo,如果选择mvc项目,需要引用web API引用。或者直接选择Web API项目。
2、添加对Swagger的引用:在nuget中搜索:Swashbuckel,现在的版本为5.6.0;进行安装
3、点击项目->属性->生成,在输出栏中选择:XML文档文件,前面的复选框进行打勾。生成xml文档
4、配置SwaggerConfig.cs文件
在EnableSwagger中找到注释的内容:
注释内容:
//c.IncludeXmlComments(GetXmlCommentsPath());
大约在104行,取消注释,添加方法:GetXmlCommentsPath(),返回项目xml文件所在路径
protected static string GetXmlCommentsPath()
{
return $"{System.AppDomain.CurrentDomain.BaseDirectory}\\bin\\SwaggerMvc5Demo.xml";
}
5、在_Layout.cshtml中添加超链接到swagger
6、点击CTRL+F5,运行项目,点击Swagger Help,看到界面如下,有可能controller的方法时隐藏的,只需点击Show/Hide进行显示/隐藏操作即可