2

我在XmlDocument. 我正在尝试从中提取className

<Registration className="Eng" type="DirectRegistration" state="Activated"     xmlns="http://xyz/Registration">
  <Fields>
    <Field type="abc" value="123456" />
    <Field type="xyz" value="789" />
  </Fields>
</Registration>

我已经尝试了以下代码,但它没有给我className

var xmlNode = xmlDoc.DocumentElement;

任何人都可以帮助我获得价值className

非常感谢

4

3 回答 3

4

你几乎在那里:

var className = xmlDoc.DocumentElement.GetAttribute("className");

xmlDoc.DocumentElement给你整个元素;GetAttribute从中提取一个单独的命名属性。

于 2012-08-14T10:44:54.420 回答
1

尝试使用这个:

// Trying to parse the given file path to an XML
XmlReader firstXML = XmlReader.Create(XMLPath);
firstXML.ReadToFollowing("Registration");
firstXML.MoveToAttribute("className");
var res = firstXML.Value;

res将持有“className”值。

于 2012-08-14T10:47:14.887 回答
1

您还可以使用 xPath 来检索属性

string className = xmlDocument.SelectSingleNode("//Registration/@className").Value;
于 2012-08-14T10:51:53.497 回答