Я анализирую документ xml, мне нужно узнать значение gid (атрибута) (3810).
На основе SelectSingleNode()
.Я обнаружил, что нелегко найти имя атрибута и его значение.
Могу ли я использовать этот метод или я должен переключиться на другой способ.
Прикреплен мой код.
Как я могу использовать book
obj для получения значения атрибута 3810
для gid
.Спасибо.
Мой файл test.xml, как показано ниже
<?xml version="1.0" ?>
<root>
<VersionInfo date="2007-11-28" version="1.0.0.2" />
<Attributes>
<AttrDir name="EFEM" DirID="1">
<AttrDir name="Aligner" DirID="2">
<AttrDir name="SequenceID" DirID="3">
<AttrObj text="Slot01" gid="3810" unit="" scale="1" />
<AttrObjCount value="1" />
</AttrDir>
</AttrDir>
</AttrDir>
</Attributes>
</root>
Я написал файл test.cs как показано ниже
public class Sample
{
public static void Main()
{
XmlDocument doc = new XmlDocument();
doc.Load("test.xml");
XmlNode book;
XmlNode root = doc.DocumentElement;
book = root.SelectSingleNode("Attributes[AttrDir[@name='EFEM']/AttrDir[@name='Aligner']/AttrDir[@name='SequenceID']/AttrObj[@text='Slot01']]");
Console.WriteLine("Display the modified XML document....");
doc.Save(Console.Out);
}
}
[Обновление 06/10/2010]
XML-файл является сложным файлом.Включены тысячи гидов.Но для каждого из Xpath gid уникален.
Я загружаю XML-файл в элемент управления TreeView.this.treeView1.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView1_AfterSelect);
.Когда произошло событие treeView1_AfterSelect
, e.Node.FullPath
вернется в качестве строкового значения.
Я анализирую строковое значение e.Node.FullPath
.Тогда я получил член XPath Above.Затем я попытался найти, какой элемент gid был выбран.
Мне нужно найти значение gid в качестве возвращаемого значения.