1

下面是读入XmlDocument的XML文件

<Test xmlns="http://api.test.com/v2" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
    <Result id="2015" description="Invalid Token" />
</Test >

我需要的是存储在一些 TextBox 中的 'id' 属性值(“2015”)

这就是 XmlDocument 的加载方式

XmlDocument updateUser = new XmlDocument();
updateUser.Load(response.GetResponseStream());

一直到这里都很好。

然后,创建命名空间并搜索节点

XmlNamespaceManager nsmgr = new XmlNamespaceManager(updateUser.NameTable);
nsmgr.AddNamespace("restup", "http://api.test.com/v2");

XmlNodeList locationElements1 = updateUser.SelectNodes("//restup:Test", nsmgr);
foreach (XmlNode Test in locationElements1)
{
//What DO I do here to get the value of 'id' attribute from the 'Result' node and save it in txtTest Textbox.

}
4

3 回答 3

3
var id = Test.FirstChild.Attributes["id"].Value;
于 2012-08-14T15:47:25.237 回答
0
string idString = Test.FirstChild.Attributes["id"].ToString();
于 2012-08-14T15:51:59.837 回答
0

你好,这是另一种有用的方法

XmlTextReader reader = new XmlTextReader(fileLocation); //fileLocation is the Path of the XML file
while (reader.Read())
{

  if (reader.NodeType == XmlNodeType.Element) //if the node is an element (not a comment, CDATA, or text)
     if (reader.Name == "Result")
       textBox1.Text = reader.GetAttribute("id");

}
reader.Close();
于 2012-08-16T11:54:31.413 回答