我们正在使用Sandcastle和SHFB为.NET项目创建文档。基本上,这是有效的。
不幸的是我们正在使用带有德语语言包的.NET(这应该保持这种方式;-)),但显然SHFB在使用德语变音符号加载.NET自己的XML文件时会遇到问题。
我们得到的是XmlParser抛出的异常,因为它似乎无法正确读取文件(尽管文件中的编码设置为UTF8)。问题是这些文件不在我们的控件下,它们是由Microsoft创建的。
一个可能的解决方案可能是卸载.NET的德语语言包,但首先这是解决方法而不是解决方案,其次是卸载程序警告我们“我停止工作的一个或多个产品”......为了尝试它,这有点过于挑剔。
这是否有官方解决方案?
答案 0 :(得分:0)
我不确定这是否能解决您的问题,但您可以尝试使用变音符号的数字表示。
取自Sandcastle帮助文件构建器页面:
使用实体表示XML中的特殊字符时 语言资源文件或标题文本,版权文本等, 使用数字形式而不是XML解析器的名称形式 不承认他们会抛出异常。例如,如果你 指定Ä(带有分音符的拉丁大写字母A)是一个例外 将生成。要修复它,请改用数字形式(Ä)。 这也适用于版权文本中的符号,例如©。 相反,你应该使用& #169;获得版权符号。
注意: &之间的空格我插入了#,以避免格式化。
参见here字符的数字表示