Как выбрать дочерний узел, который содержит узлы из родительского XmlNode - PullRequest
0 голосов
/ 11 апреля 2019

Мой XML выглядит следующим образом:

 <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> 

Я пытаюсь выбрать «автора» из «книги» узла. Я попробовал приведенный ниже код. Приведенный выше код перемещается по «книге», которую я могу получить.название и цена, но я не уверен, как написать xpath для автора, я всегда получаю нулевое значение, поскольку я пробовал разные методы, но не работал.

XmlDocument loadbooks = new XmlDocument();
loadbooks.LoadXml(responseXml);
XmlNodeList xmlBooks = loadbooks.GetElementsByTagName("book");


        if (xmlOrders != null)
        {
            foreach (XmlNode book in xmlBooks)
            {
    XmlNode xmlAuther = book.SelectSingleNode("book[@*]/author");
    XmlNode xmlAuther = book.SelectSingleNode("book/author");
    XmlNode xmlAuther = book.SelectSingleNode("author");

Пожалуйста, посоветуйте, как получить "автор "один узел из" книжного "узла.

...