什么是在Web表单中显示XML的最佳方式?

时间:2009-10-21 02:44:39

标签: asp.net xml formatting

HI全部,我有一个从ssh连接返回的XML输出,并希望在网页上干净地显示结果。什么控件最适合传递XML字符串?它们中的任何一个都可以像IE一样提供扩展/折叠功能吗?谢谢和问候,Al

3 个答案:

答案 0 :(得分:1)

答案 1 :(得分:1)

使用<pre>标记包装内容,然后替换所有Xml文件的“&lt;”带有“&lt;”和“&gt;”的括号那些带有“&gt;”的人。 E.g。

<pre>
    &lt;?xml version="1.0" encoding="utf-8"?&gt;
    &lt;rootNode&gt;
    &lt;subnode&gt;Subnode&lt;/subnode&gt;
    &lt;/rootNode&gt;
</pre>

显示为

 <?xml version="1.0" encoding="utf-8"?>
 <rootNode>
     <subnode>Subnode</subnode>
 </rootNode>

在网页中。

答案 2 :(得分:1)

如果你想在IE中找到颜色化/展开/折叠功能,最好的方法可能是使用类似IE使用的XSLT转换。 Here是来自xsl-list的帖子,其中包含可用的转换版本。 (我相信IE使用的实际转换,即使是现在,XSL-WD,而不是XSLT;但是我链接的版本被重新设计为使用XSLT。)

此转换生成整个网页。如果你想从网页内部使用它(特别是如果你想在同一页面上显示多个XML文档),你将不得不调整一些,例如将样式表和脚本提取到您的页面引用的单独文件中,而不是让变换发出它们,因此您最终不会在页面中找到它们的八个副本。

我已经使用了这个转换(加上一个WebBrowser控件)来构建我在桌面应用程序中使用的一个小的XML可视化器类,它就像一个魅力。