[英]How to generate documentation using Sandcastle NuGet package (EWSoftware.SHFB)?
我正在嘗試使用Visual Studio中的Sandcastle的NuGet包(EWSoftware.SHFB)為我的C#代碼生成網站文檔。 事實是我不知道如何使用它。 我從NuGet包管理器安裝它,然后我不知道如何處理它。
編輯我的文檔項目並使用安裝了默認安裝程序的VS Sandcaslte擴展生成相應的網站沒有問題。
謝謝您的幫助。
MsBuild.exe MyDocumentationProject.shfbproj
生成了文檔。 這意味着無法通過VS編輯項目,但可以使用命令行生成項目。
Beforhand,如https://github.com/EWSoftware/SHFB/blob/master/NuGet/ReadMe.txt所述 :
必須在MyDocumentationProject.shfbproj
中設置ComponentPath
屬性,以提供有關您正在使用的框架的反射信息。
<PropertyGroup> <ComponentPath>$(MSBuildThisFileDirectory)..\\packages\\EWSoftware.SHFB.NETFramework.4.6</ComponentPath> </PropertyGroup>
必須在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.