0

我有一个示例 XML 文档,例如

<?xml version="1.0" encoding="utf-8" ?>
<Employees>
 <Employee>
    <EmpId>1</EmpId>
    <Name>Shawn</Name>   
 </Employee>
 <Employee>
    <EmpId>2</EmpId>
    <Name>Neil</Name>
 </Employee>
 <Employee>
    <EmpId>3</EmpId>
    <Name>Kate</Name>
  </Employee>
 <Employee>
    <EmpId>4</EmpId>
    <Name>Robert</Name>
</Employee>
</Employees>

我想显示员工姓名。

我正在使用以下代码片段

 XElement doc = XElement.Load("loading document");
 IEnumerable<XElement> employees = doc.Elements();

如何扩展代码以显示员工姓名?

4

3 回答 3

0
XElement doc = XElement.Load(@"loading document")   

// Get all employeesNames
IEnumerable<string> employeesNames=
        from el in doc.Root.Descendants("Employee")       
        select el.Descendants("Name");
于 2013-06-15T10:03:13.730 回答
0
 XElement doc = XElement.Load("loading document");
 IEnumerable<string> result = doc.Root.Elements().SelectMany(n => n.Elements("Name")).Select(n => n.Value);

将为您提供IEnumerable<string>.

于 2013-06-15T10:04:48.907 回答
0

尝试这个

XElement doc = XElement.Load(@"loading document")
IEnumerable<XElement> employees = doc.Elements();

foreach (var employee in employees )
   {
        Console.WriteLine(employee.Element("Name").Value);
   }
于 2013-06-15T09:59:06.960 回答