我有一個來自web服務的XmlDocument,我想使用xml的子集來填充Gridview控件。不幸的是,它包含了我不需要的額外數據。所以我想從現有的xml文檔的一個子集創建一個新的XmlDocument。從Asp.Net中現有的XmlDocument數據創建新的XmlDocument
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」?爲了清晰起見,請修復錯字。 – 2009-09-10 15:52:46
@GreenEggs:馬特球意味着:你不小心沒有括號。 – Residuum 2009-09-10 16:03:30