【问题标题】:LINQ to XML just pickup child elements not lower same named elementsLINQ to XML 只是拾取子元素而不是更低的相同命名元素
【发布时间】:2016-02-01 09:43:09
【问题描述】:

我正在使用 VB.net 轴符号来遍历一些返回的 XML。

XML 有一个列表中我需要的“类型”节点列表。

它还有一些其他“类型”节点,位于 XML 的更下方,我目前不感兴趣。

我的代码:

 Dim locTypeList = ""

                For Each locationType In returnedXMLGoogle...<result>...<type>
                    locTypeList = locTypeList & locationType.Value & ","
                Next

                If locTypeList.Length > 0 Then locTypeList = Left(locTypeList, Len(locTypeList) - 1)

                'gpr.googlePlacesTypes = returnedXMLGoogle...<type>.Value

                 gpr.googlePlacesTypes = locTypeList

不幸的是,它会拾取数据结构中的每个子节点,甚至是更下方的子节点。

如何将循环限制在&lt;result&gt; 节点下的那些节点?

【问题讨论】:

    标签: xml vb.net linq-to-xml


    【解决方案1】:

    使用子标签代替后代标签:

    returnedXMLGoogle...<result>.<type>
    

    代替

    returnedXMLGoogle...&lt;result&gt;...&lt;type&gt;

    这只会给你那些直接锚定到结果节点的类型节点。

    【讨论】:

    • Dim results As List(Of XElement) = doc.Descendants("result").Descendants("value").ToList()
    猜你喜欢
    • 2010-12-17
    • 1970-01-01
    • 1970-01-01
    • 2011-02-26
    • 2022-01-22
    • 1970-01-01
    • 1970-01-01
    • 2023-03-06
    • 1970-01-01
    相关资源
    最近更新 更多