前言
回顧之前的兩篇Swagger做Api接口文檔,我們大體上學會了如何在net core3.1的項目基礎上,搭建一套自動生産API接口說明文檔的架構。
本來在Swagger的基礎上,前後端開發人員在開發生産期間,可以借此進行更加便捷的溝通交流。可是總有些時候,遇到一些難纏的,又不講道理,偏偏覺得将Swagger文檔位址丢給客戶會不夠正式!死活要一份word文檔。

可是這個時候,如果接口數量上百個,甚至更多,一個一個手動輸入word,那将是一筆耗時的工作。但卻有什麼辦法可以解決呢?
對了,利用Swagge生成的Json檔案轉換為word文檔不就可以了嗎?
思路
1. 擷取Swagger接口文檔的Json檔案
2. 解析Json檔案資料填充到Html的表格中
3.根據生成的html轉work文檔
模闆
URL
/api/Movie/AddMovie
請求方式
Post
參數名
參數類型
是否必填
說明
id
Query
False
影視ID
Name
電影名稱
Type
電影類型
狀态碼
200
Success
示例
請求參數
傳回值
開始
1.通過Swagger源碼檔案可以看到
可以拿到swagger生成的文檔資料,是以我們可以建立一個控制器SwaggerController.cs,
2. 在Startup.cs檔案中,利用net core的ioc容器,注入SwaggerGenerator執行個體化,這樣在後面的調用中可以直接使用這個方法
根據上面擷取的model檔案資料,這個時候,我們利用Razor檔案,結合html的table模闆,将資料周遊填充到頁面中,生成完整的頁面
Html模闆
将資料周遊到靜态頁面中,
将html轉換為word後,我們就可以看到帶有 .doc 的效果了!差不多是如下效果
總結
1. 到這基本就結束了,通過簡易的幾個接口的方式,展示了如何通過将Swagger接口文檔生成word文檔。可以根據自己的html模闆生成各式的word樣式文檔說明。
2.寫這篇番外主要是因為之前介紹了關于如何使用Swagger生成線上文檔,但實際工作中,可能也會遇到這種要各種正式word文檔的客戶,是以在此分享一些想法和思路,同時希望大家不吝指教。
3.後續還會不斷修改和完善,可以更多的生成不同的檔案類型和按需生成不同版本的接口文檔,持續更新。。。
4 .注:搜尋關注公衆号【DotNet技術谷】--回複【文檔生成器】,可擷取本篇Swagger轉換work檔案
5. 參考資料:Spire.Doc檔案 、Swagger開源位址
6.源碼下載下傳