LINQ to XML:获取元素的子值
好吧,这个是我的 XML 文件
<?xml version="1.0" encoding="utf-8"?>
<config>
<setup>
<Test>10</Test>
<Copy>
<Descr>AA</Descr>
<Descr>BB</Descr>
</Copy>
</setup>
</config>
,这个是我的 LINQ 查询 :(
Dim query = From q In XElement.Load("\MyXml.xml").Elements("setup") _
Where q.Element("Test").Value = "SomeValue" _
Select New With {.Test = q.Element("Test").Value, _
.CopyDescr = q.Element("Copy/Descr").Value}
不幸的是,这个会产生以下直接错误。
The '/' character, hexadecimal value 0x2F, cannot be included in a name.
所以我的问题是,如何获取 << 中包含的子值? Description>
也没有出现错误?您知道吗,我很乐意将 CopyDecr
中包含的值加载到 List of(String)
中以供稍后使用用法...
提前致谢!
Well, this one is my XML file
<?xml version="1.0" encoding="utf-8"?>
<config>
<setup>
<Test>10</Test>
<Copy>
<Descr>AA</Descr>
<Descr>BB</Descr>
</Copy>
</setup>
</config>
and this one is my LINQ query :(
Dim query = From q In XElement.Load("\MyXml.xml").Elements("setup") _
Where q.Element("Test").Value = "SomeValue" _
Select New With {.Test = q.Element("Test").Value, _
.CopyDescr = q.Element("Copy/Descr").Value}
Unfortunately, this one, produces the following straight-forward error.
The '/' character, hexadecimal value 0x2F, cannot be included in a name.
So my question is, how can i get the child values contained in the <Description>
too, without getting the error? You see i would love to load the Values contained in the CopyDescr
to a List of(String)
for a later usage...
Thanks in advance!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以使用 XPath:
但是这将返回一个元素列表。可能您需要以某种方式将它们连接在一起,因此您的代码将是:
You can use XPath:
However this will return a list of elements. Probable you will need to join them together somehow, so your code is going to be:
啊哈!我刚刚找到了。
后代
成功了。Aha! I just found it. The
Descendants
does the trick.