Исключение недопустимого символа MRefBuilder в SandCastle

Я пытаюсь использовать конструктор файлов справки Sandcastle для создания файла справки для моей сборки. Когда я запускаю сборку, я получаю следующую ошибку:

 MrefBuilder (v2.4.10520.1)
  Copyright c Microsoft 2006
  Info: Loaded 1 assemblies for reflection and 15 dependency assemblies.

  Unhandled Exception: System.ArgumentException: '', hexadecimal value 0x02, is an invalid character.
     at System.Xml.XmlEncodedRawTextWriter.InvalidXmlChar(Int32 ch, Char* pDst, Boolean entitize)
     at System.Xml.XmlEncodedRawTextWriter.WriteAttributeTextBlock(Char* pSrc, Char* pSrcEnd)
     at System.Xml.XmlEncodedRawTextWriter.WriteString(String text)
     at System.Xml.XmlEncodedRawTextWriterIndent.WriteString(String text)
     at System.Xml.XmlWellFormedWriter.WriteString(String text)
     at System.Xml.XmlWriter.WriteAttributeString(String localName, String value)
     at Microsoft.Ddue.Tools.ManagedReflectionWriter.WriteTypeElements(TypeNode type)
     at Microsoft.Ddue.Tools.ManagedReflectionWriter.WriteType(TypeNode type)
     at Microsoft.Ddue.Tools.ManagedReflectionWriter.VisitType(TypeNode type)
     at Microsoft.Ddue.Tools.Reflection.ApiVisitor.VisitTypes(TypeNodeList types)
     at Microsoft.Ddue.Tools.Reflection.ApiVisitor.VisitNamespace(Namespace space)
     at Microsoft.Ddue.Tools.ManagedReflectionWriter.VisitNamespace(Namespace space)
     at Microsoft.Ddue.Tools.Reflection.ApiVisitor.VisitNamespaces(NamespaceList spaces)
     at Microsoft.Ddue.Tools.ManagedReflectionWriter.VisitNamespaces(NamespaceList spaces)
     at Microsoft.Ddue.Tools.Reflection.ApiVisitor.VisitApis()
     at Microsoft.Ddue.Tools.MRefBuilder.Main(String[] args)

Я также получаю эту ошибку при запуске из командной строки.

Я использовал шестнадцатеричный редактор для изучения Documentation.xml, который выводит VS, и в файле нет символа 0x02.

Есть ли у кого-нибудь подсказка или совет?

Спасибо


person taylonr    schedule 06.04.2010    source источник


Ответы (1)


Похоже, это связано с DLL, которую мне пришлось использовать для подключения к SAP. ERP-подключение. Как только я удалил это пространство имен, все пошло хорошо.

person taylonr    schedule 08.04.2010
comment
Не могли бы вы рассказать, как вы устранили это пространство имен? Я сталкиваюсь с той же проблемой. - person rifferte; 09.06.2010
comment
Я создал класс с именем NamespaceDoc.cs, поместил его в пространство имен моей задачи, а затем установил для класса атрибут [System.Runtime.CompilerServices.CompilerGenerated()]. Это заставляет его игнорировать все классы в этом пространстве имен. - person taylonr; 09.06.2010