【发布时间】:2014-08-02 21:04:42
【问题描述】:
我正在使用 C#。
我从外部客户端获得了一个带有子节点的 xml 节点,如下所示:
<PriceID>32</PriceID>
<Store_1> 344</Store_1>
<Store_32> 343 </Store_32>
<SS> 54</SS>
我想选择所有以 Store & SS
开头的节点有什么办法可以做到吗?
我知道有一种方法可以选择以 Store 开头的节点:
list = el.SelectNodes(@"node()[starts-with(name(), 'Store')]");
我想选择所有以 "Store" & "SS" 开头的节点。
请告诉我。
【问题讨论】:
-
你有使用XmlDocument吗?您可以改用 LINQ to XML 吗?我个人觉得更简单...
var results = doc.Descendants().Where(x => x.Name.LocalName.StartsWith("Store") || x.Name.LocalName.StartsWith("SS")); -
我更喜欢使用 xmldocument,因为我们大量使用它并且它将与我们的其余代码保持一致。
-
我怀疑这只是意味着您的代码可以简化 很多 :)
XmlDocument没有非常干净的方式来迭代所有元素是一种痛苦:( -
是的!你实际上是对的:-)。
标签: c# .net xml visual-studio-2010 xmldocument