簡體   English   中英

如何使用Sandcastle NuGet包(EWSoftware.SHFB)生成文檔?

[英]How to generate documentation using Sandcastle NuGet package (EWSoftware.SHFB)?

我正在嘗試使用Visual Studio中的Sandcastle的NuGet包(EWSoftware.SHFB)為我的C#代碼生成網站文檔。 事實是我不知道如何使用它。 我從NuGet包管理器安裝它,然后我不知道如何處理它。

編輯我的文檔項目並使用安裝了默認安裝程序的VS Sandcaslte擴展生成相應的網站沒有問題。

謝謝您的幫助。

假設您已經有項目的解決方案,請在解決方案中添加“文檔”類型的新項目。

在此輸入圖像描述

右鍵單擊“文檔源”,然后通過選擇要記錄的csproj來添加源。

在此輸入圖像描述

然后建立。

MsBuild.exe MyDocumentationProject.shfbproj生成了文檔。 這意味着無法通過VS編輯項目,但可以使用命令行生成項目。

Beforhand,如https://github.com/EWSoftware/SHFB/blob/master/NuGet/ReadMe.txt所述

  1. 必須在MyDocumentationProject.shfbproj中設置ComponentPath屬性,以提供有關您正在使用的框架的反射信息。

     <PropertyGroup> <ComponentPath>$(MSBuildThisFileDirectory)..\\packages\\EWSoftware.SHFB.NETFramework.4.6</ComponentPath> </PropertyGroup> 
  2. 必須在MyDocumentationProject.shfbproj有條件地設置SHFB環境變量。

     <PropertyGroup> <SHFBROOT Condition=" '$(SHFBROOT)' == '' ">$(MSBuildThisFileDirectory)..\\packages\\EWSoftware.SHFB.2015.10.10.0\\Tools\\</SHFBROOT> </PropertyGroup> 

我在安裝Sandcastle后使用Visual Studio插件創建了文檔項目。

成功完成后,我在另一個項目上添加了以下post-build事件:

IF "$(ConfigurationName)"=="Debug" Goto Exit

ECHO Building SHFB help file via MSBuild
"$(SystemRoot)\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe"  /p:CleanIntermediates=True /p:Configuration=Release "$(SolutionDir)Documentation\Documentation.shfbproj"

:Exit

項目文檔文件中的SHFB環境變量如下所示:

<!-- NOTE: Update the version number in the path (YYYY.M.D.R) to match the package version -->
<SHFBROOT Condition=" '$(SHFBROOT)' == '' ">$(MSBuildThisFileDirectory)..\packages\EWSoftware.SHFB.2016.9.17.0\tools\</SHFBROOT>

如果系統上沒有安裝Sandcastle,它將使用NuGet包中的可執行文件。 確保版本與其他版本匹配。

這些文檔鏈接可能有助於我忘記的問題:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM