У меня были некоторые проблемы с использованием SelectNodes и SelectSingleNode, потому что они, кажется, всегда возвращали ноль. Вот код, который я использовал:
DialogResult openFDexec = openFileDialog1.ShowDialog();
if (openFDexec == DialogResult.OK)
{
filePath = openFileDialog1.FileName;
var fileStream = openFileDialog1.OpenFile();
using (StreamReader reader = new StreamReader(fileStream))
{
}
}
XmlDocument doc = new XmlDocument();
doc.Load(filePath);
XmlNodeList transaction = doc.SelectNodes("bookstore/book/title");
Console.WriteLine(transaction.Count);
Пример XML, который я использовал, взят с сайта Microsoft:
<?xml version='1.0'?>
<bookstore xmlns="urn:newbooks-schema">
<book genre="novel" style="hardcover">
<title>The Handmaid's Tale</title>
<author>
<first-name>Margaret</first-name>
<last-name>Atwood</last-name>
</author>
<price>19.95</price>
</book>
<book genre="novel" style="other">
<title>The Poisonwood Bible</title>
<author>
<first-name>Barbara</first-name>
<last-name>Kingsolver</last-name>
</author>
<price>11.99</price>
</book>
<book genre="novel" style="paperback">
<title>The Bean Trees</title>
<author>
<first-name>Barbara</first-name>
<last-name>Kingsolver</last-name>
</author>
<price>5.99</price>
</book>
</bookstore>