HasChildNodes(.Net,XmlDocument)始终报告为“ true”

时间:2018-07-13 21:23:35

标签: c# xml xmldocument

我想区分这两种情况-但是HasChildNode在两种情况下均返回“ true”,并且在两种情况下childNode的数量均为1。

np.nan

这是我的示例代码和输出。

<eventid>45072</eventid>
<titles>
    <title>kabel eins late news</title>
</titles>

输出:

n1有1个ChildNodes
41:#text:45072
n1有1个ChildNodes
41:title:kabel掌握最新消息

1 个答案:

答案 0 :(得分:0)

由于@ DavidBrowne-Microsoft,我将代码更改为XDocument,将Linq更改为XML

    XDocument doc = XDocument.Parse(xmlString);
    var programme = doc.Descendants("programme").Select(p => p);
    foreach (XElement p in programme) {
       foreach (var attr in p.Attributes()){
              AppendText($"{attr.Name} {attr.Value}");
       }
       foreach (XElement ele in p.Elements()) {
           if (ele.HasElements) {
               foreach (XElement child in ele.Elements()) {
                   AppendText($"{child.Name} {child.Value}");
               }
           }
           else {
               AppendText($"{ele.Name} {ele.Value}");
           }               
       }
    }

我只发现了一些初学者示例,所以这是开始的代码段。