DocFx
DocFx是微軟新推出的文件生成工具,並且也是一個OpenSource的專案(Github),可以將文件產生網站形式,目前支援C#和VB。與Sandcastle不同的是,可以由nuget下載安裝,並且設定也由xml轉變為json。DocFx還有許多不錯的功能
- 支援DNX
- Markdown
- Custom Templates(說明)
接著來看如使用DocFx快速地產出文件吧。
首先,請先使用nuget安裝DocFx的套件,在這裡有一個需要注意的地方,我們需要下載的套件名稱應該是docfx.msbuiled。
為甚麼是docfx.msbuild而不是docfx呢,因為如果是安裝docfx會一直出現.net Framdwork不相容
docfx目前猜測應該是給DNX使用,所以要安裝有特別註明msbuild套件。
安裝好之後可以看到多了一些相關的檔案docfx.json與toc.yml
點開docfx.json,可以看到資料來源和編譯的設定都在這邊,但是,基本上是不需要做任何變更。
{
"metadata": [
{
"src": [
{
"files": [ "**/*.csproj" ],
"exclude": [ "**/bin/**", "**/obj/**" ]
}
],
"dest": "obj/api"
}
],
"build": {
"content": [
{
"files": [ "**/*.yml" ],
"cwd": "obj/"
},
{
"files": [ "**.md", "toc.yml" ]
}
],
"resource": [
{
"files": [ "**/images/**" ]
}
],
"externalReference": [
],
"globalMetadata": {
},
"template": [
"default"
],
"dest" : "_site"
}
}
不過,在測試的過程中,筆者遇到一個滿奇怪的環境問題,當專案使用.net Framework 4.5.1時,一直遇到一個奇怪的錯誤
結果照著錯誤的路徑找到System.Data.dll結果真的是0KB,這是比較怪異的環境問題,如果大家有使用.net Framework 4.5.1可能要稍微注意一下。
最後,來看一下產出的說明文件
文件的樣式稍微跟Sandcastle有些許不同,但是還是相當美觀的,起碼不用自己寫就很棒了(話說,在甚麼都講自動化的年代,應該也很少人會自己寫了)。
結論
這一篇先稍微介紹一下怎麼使用DocFx,在官方網站有提供.exe的執行檔,下一篇再來談談如何將這一個套件整合到CI Server上,讓產文檔這一件是融入到CI\CD的過程中。
補充說明
如果大家要把程式上的說明,像是類別、方法上的summary,parameters的說明也輸出到文件上只需要讓建置時讓XML輸出即可
參考資料
免責聲明:
"文章一定有好壞,文章內容有對有錯,使用前應詳閱公開說明書"