Пример кода 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-й вариант: заменить < персонажи с &lt;,
2-й вариант: поместите ваш XML-код в <![CDATA[ ... ]]> блок.
3-й вариант: вы также можете использовать альтернативный инструмент, такой как ForgeDoc:)

Еще одна вещь: не помещайте блоки примеров в раздел замечаний. Example тег верхнего уровня

Другие вопросы по тегам