LINQ TO XML解决方案

Wil*_*oat 1 c# linq-to-xml

<Root xmlns="http://tempuri.org/DataSourceSchemaConfig.xsd">
 <Node>
  <Name>Peter</Name>
 </Node>
 <Node>
  <Name>John</Name>
 </Node>
</Root>
Run Code Online (Sandbox Code Playgroud)

我如何获得名单?

我试过这个,但它不起作用,我的错误在哪里?

            var lists = from node in nodes.Descendants()
                        where node.Name.LocalName.Equals("Node")
                        select node.Elements("Name").First().Value;
Run Code Online (Sandbox Code Playgroud)

LB解决方案仅在我从ROOT标记中删除xmlns ="http://tempuri.org/DataSourceSchemaConfig.xsd"时工作.

L.B*_*L.B 5

 XDocument xDoc = XDocument.Load(....);
 var names = xDoc.Descendants("Name").Select(x => x.Value);
Run Code Online (Sandbox Code Playgroud)

- 编辑 -

XDocument xDoc = XDocument.Load(....);
XNamespace ns = XNamespace.Get("http://tempuri.org/DataSourceSchemaConfig.xsd");
var names = xDoc.Descendants(ns+"Name").Select(x => x.Value);
Run Code Online (Sandbox Code Playgroud)