Я намагаюся перетворити об'єкт типу XmlDocument
до рядка.
У Visual Studio 2010 все, що потрібно, було викликати XmlDocument.InnerText
відповідно до документації тут.
У новій системі .NET XmlDocument.InnerText
був припинений, і зараз викидає виняток згідно з документацією тут.
Я просто використовуватиме XmlDocument.InnerXml
оскільки це повертає String, хоча проблема полягає в тому, що повернена рядок не містить жодного форматування документа XML (нові рядки, відступи тощо). Спадщина XmlDocument.InnerText
повернув все це.
Це виглядає як XmlDocument.InnerText
все ще доступний для вузлів і XmlElements
, хоча я задаюсь питанням, яким найпростішим способом було б отримати все XmlDocument
як текст
Відповіді:
1 для відповіді № 1Ви можете виконати це за допомогою StringWriter ...
" build an XML document to test
Dim x As New System.Text.StringBuilder
With x
.AppendLine("<root>")
.AppendLine("<foo>bar</foo>")
.AppendLine("</root>")
End With
Dim d As New XmlDocument
d.LoadXml(x.ToString)
" create a stringwriter
Dim sw As New System.IO.StringWriter
" write the xml to the stringwriter
d.Save(sw)
" get the contents of the stringwriter with whitespace and line breaks preserved
Debug.WriteLine(sw.ToString)