如何使用Sandcastle NuGet包(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所述 :
-
必须在
MyDocumentationProject.shfbproj
中设置ComponentPath
属性,以提供有关您正在使用的框架的reflection信息。$(MSBuildThisFileDirectory)..\packages\EWSoftware.SHFB.NETFramework.4.6 -
必须在
MyDocumentationProject.shfbproj
有条件地设置SHFB环境变量。$(MSBuildThisFileDirectory)..\packages\EWSoftware.SHFB.2015.10.10.0\Tools\
我在安装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环境变量如下所示:
$(MSBuildThisFileDirectory)..\packages\EWSoftware.SHFB.2016.9.17.0\tools\
如果系统上未安装Sandcastle,它将使用NuGet包中的可执行文件。 确保版本与其他版本匹配。
这些文档链接可能有助于我忘记的问题:
- 在GUI之外构建项目
- 使用Team Build生成文档