繁体   English   中英

LINQ-to-XML:选择特定的节点值

[英]LINQ-to-XML: Selecting specific node value

<PKT>
   <Result Name="GetBalance" Success="1">
      <Returnset>
         <Balance Type="int" Value="0" />
      </Returnset>
   </Result>
</PKT>

通过LINQ-to-XML获得Balance的价值的最佳方法是?

var values = from e in XDocument.Load("MyFile.xml").Descendants("Balance")
             select e.Attribute("Value").Value;

foreach (var e in values)
{
    Console.WriteLine(e);
}
XDocument doc = XDocument.Load("MyFile.xml");
IEnumerable<XElement> elements = doc.Descendants("Balance");

foreach (XElement e in elements)
{
    Console.Write(e.Attribute("Value").Value);
}

您可以这样进行。 我直接在此处输入了代码,您可能需要确认任何错别字。

如果您只想从第一次出现的Balance获取值,则可以这样做。

var balance = (from n in XDocument.Load("MyFile.xml").Descendents("Balance")
               select n.Attributes("Value").Value).ToList().First();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM