Пример кода XML документации Sandcastle без возврата каретки
Я использую sandcastle для документирования в API веб-сервиса и для сводок и замечаний к пространству имен верхнего уровня. Я добавил файл sandcastle.xml в свой проект.
Моя проблема заключается в том, что когда я пытаюсь добавить пример кода xml в раздел примечаний пространства имен в этом файле XML, sandcastle отображает код xml на одной строке без возврата каретки.
<member name="N:BrokerServices.GatewayAsmx">
<summary>summary text</summary>
<remarks>
remarks text
<example>
Sample xml code
<code lang="xml">
<Membership>
<firstname>Cliff</firstname>
<lastname>Mayson</lastname>
<age>27</age>
</Membership>
</code>
</example>
</remarks>
</member>
В результате приведенный пример кода отображается как:
<Member><firstname>Cliff</firstname><lastname>Mayson</lastname><age>27</age></Member>
Я попытался использовать \ n или \ r, которые работают, но символы \ n и \ r остались в примере кода:
<Member><firstname>Cliff</firstname>\n
<lastname>Mayson</lastname>\n
<age>27</age>\r
</Member>
Как вставить новые строки без символов новой строки в коде.
2 ответа
Если языковым атрибутом тега code является xml, необходимо добавить атрибут xml:space="preserve" в тег для примера xml, чтобы он правильно отображался.
например.
<member name="N:BrokerServices.GatewayAsmx">
<summary>summary text</summary>
<remarks>
remarks text
</remarks>
<example>
Sample xml code
<code lang="xml" xml:space="preserve">
<Membership>
<firstname>Cliff</firstname>
<lastname>Mayson</lastname>
<age>27</age>
</Membership>
</code>
</example>
</member>
В этом нет необходимости, если значение атрибута lang тега code равно C# или VB
1-й вариант: заменить <
персонажи с <
,
2-й вариант: поместите ваш XML-код в <![CDATA[ ... ]]>
блок.
3-й вариант: вы также можете использовать альтернативный инструмент, такой как ForgeDoc:)
Еще одна вещь: не помещайте блоки примеров в раздел замечаний. Example
тег верхнего уровня