Получить весь узел XML, а не InnerXml
Учитывая следующий XML:
<Root>
<Item id="1">
<name>Foo</name>
<status>Active</status>
</Item>
<Item id="2">
<name>Bar</name>
<status>Inactive</status>
</Item>
</Root>
Допустим, у меня есть этот XML в объекте XmlDocument, а затем следующий код:
var nodes = xmlDocumentObject.GetElementsByTagName("Item");
foreach (var node in nodes)
{
var nodeXml = ??
}
Я могу легко получить InnerXml каждого узла, который для первого узла будет:
<name>Foo</name>
<status>Active</status>
Но как я могу получить XML для узла, включая содержащий тег и его атрибуты, например:
<Item id="1">
<name>Foo</name>
<status>Active</status>
</Item>
1 ответ
Решение
Попробуйте использовать XmlNode.OuterXml вместо InnerXml
:
foreach (XmlNode node in nodes)
{
var nodeXml = node.OuterXml;
}