【发布时间】:2021-12-28 06:59:26
【问题描述】:
我有一个 XML 文件,我想使用 Contains 命令搜索“val”的值并获取它的“index”属性以及“catalog name”属性。
<list>
<catalog index="1" name="n1">
<val index="1">sample text 1</val>
<val index="2">sample text 2</val>
<val index="3">sample text 3</val>
</catalog>
<catalog index="2" name="n2">
<val index="1">sample text 0</val>
<val index="2">sample text 2</val>
<val index="3">sample text 3</val>
<val index="4">sample text 1</val>
<val index="5">sample text 5</val>
<val index="6">sample text 6</val>
</catalog>
<catalog index="3" name="n3">
<val index="1">sample text 8</val>
<val index="2">sample text 9</val>
<val index="3">sample text 10</val>
</catalog>
</list>
我用过
Dim xml_Doc = XDocument.Load(myPath & "list.Xml")
Dim search_result As IEnumerable(Of XElement)
search_result =
(From c In xml_Doc.Descendants("catalog")
Where c.Elements("val").Value.Contains("sample text 1")
Select c.Elements("val").Attributes("index").ToString & c.Attribute("name").Value)
我该怎么做?
输出应该如下:
index:1 , name: n1
index:4 , name: n2
【问题讨论】:
标签: xml vb.net linq-to-xml