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

时间:2015-11-12 09:41:10

标签: c# visual-studio nuget sandcastle

我正在尝试使用Visual Studio中的Sandcastle的NuGet包(EWSoftware.SHFB)为我的C#代码生成网站文档。事实是我不知道如何使用它。我从NuGet包管理器安装它然后我不知道如何处理它。

编辑文档项目并使用安装了默认安装程序的VS Sandcaslte扩展程序生成相应的网站没有问题。

感谢您的帮助。

3 个答案:

答案 0 :(得分:4)

假设您已经有一个项目解决方案,请添加一个类型为' Documentation'的新项目。你的解决方案。

enter image description here

右键单击“文档源”并通过选择要记录的csproj添加源。

enter image description here

然后建立。

答案 1 :(得分:3)

Zend_Mail::setDefaultTransport($transport); → //Zend_Mail::setDefaultTransport($transport); 生成了文档。这意味着无法通过VS编辑项目,但可以使用命令行生成项目。

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

  1. 必须在MsBuild.exe MyDocumentationProject.shfbproj中设置ComponentPath属性,以提供有关您正在使用的框架的反映信息。

    MyDocumentationProject.shfbproj
  2. 必须在<PropertyGroup> <ComponentPath>$(MSBuildThisFileDirectory)..\packages\EWSoftware.SHFB.NETFramework.4.6</ComponentPath> </PropertyGroup>

    中有条件地设置SHFB环境变量
    MyDocumentationProject.shfbproj

答案 2 :(得分:0)

我在安装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包中的可执行文件。确保版本与其他版本匹配。

这些文档链接可能对我忘记的问题有所帮助:

相关问题