Skip to main content
added 415 characters in body
Source Link
user73941
user73941

Alternatively you can create a dictionary:

  var result = xDoc.Descendants("DataItem").ToDictionary(e => e.Attribute("name").Value, e => e.Value);

  foreach (var key in result.Keys)
  {
    Console.WriteLine($"{key} = {result[key]}");
  }

Or if you have more <DataRow> siblings:

  var result = xDocument.Descendants("DataRow").Select(r => r.Descendants("DataItem").ToDictionary(e => e.Attribute("name").Value, e => e.Value));

  foreach (var dict in result)
  {
    foreach (var key in dict.Keys)
    {
      Console.WriteLine($"{key} = {dict[key]}");
    }
    Console.WriteLine();
  }

Alternatively you can create a dictionary:

  var result = xDoc.Descendants("DataItem").ToDictionary(e => e.Attribute("name").Value, e => e.Value);

  foreach (var key in result.Keys)
  {
    Console.WriteLine($"{key} = {result[key]}");
  }

Alternatively you can create a dictionary:

  var result = xDoc.Descendants("DataItem").ToDictionary(e => e.Attribute("name").Value, e => e.Value);

  foreach (var key in result.Keys)
  {
    Console.WriteLine($"{key} = {result[key]}");
  }

Or if you have more <DataRow> siblings:

  var result = xDocument.Descendants("DataRow").Select(r => r.Descendants("DataItem").ToDictionary(e => e.Attribute("name").Value, e => e.Value));

  foreach (var dict in result)
  {
    foreach (var key in dict.Keys)
    {
      Console.WriteLine($"{key} = {dict[key]}");
    }
    Console.WriteLine();
  }
Source Link
user73941
user73941

Alternatively you can create a dictionary:

  var result = xDoc.Descendants("DataItem").ToDictionary(e => e.Attribute("name").Value, e => e.Value);

  foreach (var key in result.Keys)
  {
    Console.WriteLine($"{key} = {result[key]}");
  }