我有一个针对.NET Framework 4.5.2的项目
我查看了XML documentation file
标签中的Build
复选框,允许我记录自己的代码。
然后我使用Sandcastle帮助文件生成器GUI构建了.chm
文件。一切都很好。
现在我使用Tuples
添加了一些功能,因为我的目标是框架版本4.5.2
,而不是稍后包含它,我添加了System.ValueTuple.dll
引用。
现在问题开始了:在我的发布目录中,除了包含我的摘要的doc.xml
文件以及代码的内容之外,还有System.ValueTuple.xml
包含.dll
文件的文档。但是,在尝试在某些更改后重建Sandcastle文件后,出现以下错误:
> SHFB: Error BE0065: BUILD FAILED: Tag początkowy „p” w wierszu 1241 na
pozycji 2 nie pasuje do tagu końcowego „th”. wiersz 1241, pozycja 92.
w System.Xml.XmlTextReaderImpl.Throw(Exception e)
w System.Xml.XmlTextReaderImpl.ThrowTagMismatch(NodeData startTag)
w System.Xml.XmlTextReaderImpl.ParseEndElement()
w System.Xml.XmlTextReaderImpl.ParseElementContent()
w System.Xml.XmlLoader.LoadNode(Boolean skipOverWhitespace)
w System.Xml.XmlLoader.LoadDocSequence(XmlDocument parentDoc)
w System.Xml.XmlDocument.Load(XmlReader reader)
w System.Xml.XmlDocument.LoadXml(String xml)
w SandcastleBuilder.Utils.BuildEngine.XmlCommentsFile.get_Comments()
w SandcastleBuilder.Utils.BuildEngine.XmlCommentsFile.get_Members()
w SandcastleBuilder.Utils.BuildEngine.XmlCommentsFileCollection.get_ContainsInheritedDocumentation()
w SandcastleBuilder.Utils.BuildEngine.BuildProcess.Build()
第一行显示Starting tag "p" in line 1241, position 2 does not match end tag "th" line 1241, position 92.
经过一些快速的回顾后,我发现确实是System.ValueTuple.dll
的文档文件被破坏了(并且非常糟糕)。由于我在帮助文件中并不需要它,并且不想修复一百个错误,我如何告诉Sandcastle忽略它?
到目前为止,我试过了:
Release
目录AllowedReferenceRelatedFileExtensions
档案中添加.csproj
Visibility
选项卡中的各个字段,包括API过滤器(违规.dll不存在)答案 0 :(得分:0)
作为测试,我将一个NuGet包PdfSharp.dll添加到一个小型的c#项目中。生成的文档是一个4.5 MB的CHM文件。
因此,在Sandcastle帮助文件生成器GUI的解决方案资源管理器中,我右键单击并删除了PdfSharp.dll和PdfSharp.xml like shown in this screenshot。生成的CHM大小为122 KB。