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進行顯示/隱藏操作即可