Sandcastle文档xml代码示例显示没有回车

时间:2012-03-21 03:11:50

标签: xml documentation sandcastle

我正在使用sandcastle来记录Web服务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 \ n字符留在代码示例中:

<Member><firstname>Cliff</firstname>\n
    <lastname>Mayson</lastname>\n
    <age>27</age>\r
</Member>

如何在代码中没有显示新行字符的情况下插入新行。

2 个答案:

答案 0 :(得分:3)

第一个选项:将<个字符替换为&lt; 第二个选项:将您的XML代码放入<![CDATA[ ... ]]>块 第3个选项:您还可以使用其他工具,例如ForgeDoc:)

还有一件事:不要将示例块放入备注部分。 Example是顶级代码。

答案 1 :(得分:3)

当代码标记的language属性为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属性值是c#或VB

,则不需要这样做