1

XML/ASP.net VB 新手在这里玩得开心,大海捞针。

我只想将一些 XML 转储到屏幕上!大量站点告诉我如何迭代节点,xpath 我直接进入。我只是希望全部放映。

Dim doc As New XmlDocument
doc.Load("remote.xml")

Dim writer as XmlTextWriter = new XmlTextWriter("debug.xml",nothing)
writer.Formatting = Formatting.Indented
doc.Save(writer)

将它写入文件做得很出色,但我希望它出现在屏幕上。doc.print(作家).....

请帮忙。

4

2 回答 2

2

用你的文档的 innerXml 试试。确保对其进行 HtmlEncode 以使其显示。用 id='ltXml' 在你的 aspx 上粘贴一个文本控件,然后是这样的:

Dim doc As New XmlDocument()
doc.Load(Server.MapPath("~/remote.xml"))

ltXml.Text = Server.HtmlEncode(doc.InnerXml)

由 OP 根据评论进行编辑。

让您的类中的函数返回 Xml 字符串。

Private Class [MyClass]
        Public Shared Function getXml() As String
        Dim doc As New XmlDocument()
        doc.Load("somefile.xml")

        Return HttpContext.Current.Server.HtmlEncode(doc.InnerXml)
    End Function
End Class

然后在网页后面的 aspx 代码中调用类函数:

ltXml.Text = [MyClass].getXml()
于 2013-04-23T09:11:00.473 回答
0

我建议使用现代XDocument而不是旧的、已弃用的XmlDocument.

XDocument.ToString已经返回了格式良好的 XML 版本,因此您需要做的就是:

Dim doc As XDocument = XDocument.Load("remote.xml")
Dim formatted As String = doc.ToString()
于 2013-04-23T09:19:10.487 回答