У меня есть XmlDocument, который из веб-службы, и я хочу использовать подмножество xml для заполнения элемента управления Gridview. К сожалению, он содержит дополнительные данные, которые мне не нужны. Поэтому я хочу создать новый XmlDocument из подмножества существующего XML-документа.Создайте новый XmlDocument из существующих данных XmlDocument в Asp.Net
protected void Page_Load(object sender, EventArgs e)
{
XmlDocument xmlDoc = Object.ReturnsXmlDocument;
XmlDocument xmlDocResults = ??? //<results><result></result></results>
}
В принципе, я хочу создать новый XmlDocument с корневым элементом. Ниже приводится сокращенный пример исходного XML-документ:
<?xml version="1.0" encoding="UTF-8"?>
<xml>
<query_time>.12</query_time>
<number_results>3</number_results>
<results>
<result><id>1</id></result>
<result><id>2</id></result>
<result><id>3</id> </result>
</results>
</xml>
код Энтони помог мне точку в правильном направлении, но это то, что на самом деле работает для меня.
XmlDocument xmlResults = new XmlDocument();
XmlDeclaration xmlDec = xmlResults.CreateXmlDeclaration("1.0", "utf-8", null);
XmlElement rootNode = xmlResults.CreateElement("results");
xmlResults.InsertBefore(xmlDec, xmlResults.DocumentElement);
xmlResults.AppendChild(rootNode);
XmlNode node = xmlDoc.GetElementsByTagName("results")[0];
xmlResults.GetElementsByTagName("results")[0].InnerXml = node.InnerXml.ToString();
Вы хотите «создать новый XmlDocument с [как] как корневой элемент»? Пожалуйста, исправьте опечатку для ясности. –
@GreenEggs: Matt Ball означал: вы случайно не скобки. – Residuum