在ASP.NET页面上显示反序列化的XML

时间:2013-05-16 07:50:22

标签: c# asp.net xml

如何在带有XML标记的ASP.NET页面上显示XML输出?

XmlDocument doc = (XmlDocument)JsonConvert.DeserializeXmlNode(jsonOutput, "root");
Console.WriteLine(doc.OuterXml);

我想在我的页面上得到如下结果:

<root>
    <id>108013515952807</id>
    <posts>
        <data>
            <message>This...Game... http://www.youtube.com/watch?v=l8Xsex0pqXY</message>
            <id>108013515952807_470604423027046</id>
            <created_time>2013-05-15T20:02:31+0000</created_time>
        </data>
        <data>
            <message>Streaming in a few minutes! http://www.youtube.com/watch?v=IYnHDT6V82k</message>
            <id>108013515952807_470538076367014</id>
            <created_time>2013-05-15T16:46:36+0000</created_time>
        </data>
    </posts>
</root>

我尝试了这个,但我没有像上面的例子那样得到XML标签。

Response.Write("<BR>" + doc.OuterXml);

2 个答案:

答案 0 :(得分:1)

尝试

XElement.Parse(request.OuterXml).ToString()

如果你想要美化XML字符串,

请参阅:What is the simplest way to get indented XML with line breaks from XmlDocument?

答案 1 :(得分:1)

如果您只是将XML放到网页上,浏览器会认为它可能是HTML并“呈现”它,这就是您无法看到标记的原因。您需要对XML进行编码

您可以使用方法

  

回复于(Server.HtmlEncode(doc.OuterXml));