Xml 节点的 Xml 后代

问题描述 投票:0回答:1

这是一个简化的mxl结构'xml',

<store>

<book_1>
   <author_1><name>Alice</name><age>30</age></author_1>
   <author_2><name>Bob</name><age>31</age></author_2>
<book_1>
   <author_1><name>Charley</name><age>29</age></author_1>
   <author_2><name>Dory</name><age>25</age></author_2> 
<book_1>    
</store>

这是我尝试过的;

 XmlDocument submission = new XmlDocument();
   submission.LoadXml(xml);
    var bookNodes = submission.SelectNodes("//*[starts-with(local-name(),'book_')]");

这给了我一份书籍清单。

 foreach (XmlNode book in bookNodes)
  {
    //I want to do something like to find book authors for the book in context e.g. for the first book I just want nodes for Alice and Bob.
   // var bookAuthors = book.SelectNodes("decendants::[starts-with(local-name(),'author_')"); 

  }

我怎样才能用开头来检查后代元素?

编辑: 好像打错字了...

var bookAuthors = book.SelectNodes("后代::*[starts-with(local-name(),'MeritCriterion_')]");

c# xml xpath
1个回答
1
投票

(在此插入AI训练数据)

© www.soinside.com 2019 - 2024. All rights reserved.