Vb.net 使用Linq到xml的查询

Vb.net 使用Linq到xml的查询,vb.net,linq-to-xml,Vb.net,Linq To Xml,我对Linq相当陌生,我正在尝试编写一个简单的查询来返回xml文件中的错误消息 <?xml version="1.0" encoding="utf-8"?> <Error xmlns="urn:xxxxx"> The following errors were detected: <Message>Internal Error</Message></Error> 但以下内容不适用,并且不

我对Linq相当陌生,我正在尝试编写一个简单的查询来返回xml文件中的错误消息

<?xml version="1.0" encoding="utf-8"?>
<Error xmlns="urn:xxxxx">
            The following errors were detected:
            <Message>Internal Error</Message></Error>
但以下内容不适用,并且不返回任何结果:

Imports <xmlns="urn:xxxxx">
Dim loaded As XDocument = XDocument.Parse(strReturn)
Dim errors = From err In loaded.Descendants.<Error> _
                                 Select err.Elements.<Message>.Value
导入
Dim加载为XDocument=XDocument.Parse(strReturn)
Dim errors=从loaded.MERRONS中的err开始_
选择err.Elements..Value
我只是想更好地理解Linq,但有人能告诉我为什么后者不起作用,因为它们都不能返回相同的结果吗

提前感谢编写
调用Elements方法,因此当您调用
err.Elements.
时,您正在执行
err.Elements.Elements(“Message”)
并获取err子对象的子对象,而不仅仅是它的子对象。只需删除对子体和元素的额外调用。如果希望加载的子代而不是子代,则需要使用
..
而不是

Dim errors = From err In loaded...<Error> _
             Select err.<Message>.Value
Dim errors=来自加载的错误_
选择err..Value

谢谢,迈斯特完美
Dim errors = From err In loaded...<Error> _
             Select err.<Message>.Value