Извлечение атрибутов Xml

#c# #xml #xml-parsing

#c# #xml #xml-синтаксический анализ

Вопрос:

У меня есть Xml, такой как показано ниже:

 <Phrase Entry="ID">
 <Ans number="1">
  <Identification LastName="Bornery" Name="John" Age="23"/>
  <Identification LastName="Grify" Name="Johnson" Age="29"/> 
  <Identification LastName="Alisen" Name="Julia" Age="38" City="NewYork" Job="Teacher"/>
  <Identification LastName="Bornery" Name="John" Weight="85"/>
 </Ans>
</Phrase>
  

и я хочу перечислить атрибуты Xml с их значениями в списке, таком как приведенный ниже список:

 MyList = {LastName="Bornery" , Name="John", Age="23" , LastName="Grify" , 
          Name="Johnson", Age="29", LastName="Alisen", 
          Name="Julia", Age="38", City="NewYork", Job="Teacher",
          LastName="Bornery", Name="John", Weight="85"}  
  

Комментарии:

1. у каждого узла XML есть Attributes коллекция, поэтому выполните итерацию по всем узлам

Ответ №1:

 var allAttributes = XDocument.Parse(xmlInString)
                             .Descendants()
                             .Where(e => e.HasAttributes)
                             .SelectMany(e => e.Attributes())
                             .ToList();
  

Комментарии:

1. Большое вам спасибо, мистер Хасан Кхан.