如何识别 xmlnode 是否没有值?

how to identify if a xmlnode has no value?

我想读取一个 xml 节点并仅在它们存在时将其值存储在数组中。

这里是要解析的xml:

 <Signals>
  <Signal_1>
    <SigNum>1</SigNum>
    <SigTypeUni>HIL RPM SYNC OUTPUT </SigTypeUni>
    <SigType>RPM_OUT_0_SENSOR SUPPLY</SigType>
    <HilCnctr>ECU1</HilCnctr>
    <HilCnctrPin>F13</HilCnctrPin>
    <EtasBoard>ESx335_1</EtasBoard>
    <EtasChannel>REF_SG_0</EtasChannel>
    <EtasBobPin>209</EtasBobPin>
    <AddHilIntCnctr />
    <AddPin />
    <LoadNum />
    <LoadRef />
    <LoadRes>400</LoadRes>
    <LoadCard />
  </Signal_1>
  <Signal_2>
    <SigNum>2</SigNum>
    <SigTypeUni>HIL RPM SYNC OUTPUT </SigTypeUni>
    <SigType>RPM_OUT_0_HALL</SigType>
    <HilCnctr>ECU1</HilCnctr>
    <HilCnctrPin>F11</HilCnctrPin>
    <EtasBoard>ESx335_1</EtasBoard>
    <EtasChannel>OUT_SG_0</EtasChannel>
    <EtasBobPin>207</EtasBobPin>
    <AddHilIntCnctr />
    <AddPin />
    <LoadNum />
    <LoadRef />
    <LoadRes />
    <LoadCard />
  </Signal_2>
 </Signals>

我只想提取 LoadRes 的值 present.As 您可以在第二个实例中看到该节点存在但没有值。我需要忽略这种情况。我该如何进行?

XmlNodeList LoadResNodelist = doc.GetElementsByTagName("LoadRes");     

        foreach (XmlNode node in LoadResNodelist)
        {


            if (node != null) 
            {
                Console.WriteLine(node.InnerXml);
                LoadNum[counterLoadNum] = node.InnerXml;
                counterLoadNum = counterLoadNum + 1;
                Console.WriteLine("counterLoadNum = {0}", counterLoadNum);
            }
}

这是行不通的,因为当节点没有值时会打印空白。 我如何只关注有值的节点?[​​=12=]

只是不要从一开始就循环遍历它们

 foreach (XmlNode node in LoadResNodelist.Cast<XmlNode>().Where(x=>!string.IsNullOrEmpty(x.InnerXml))