XDocument en supprimant des nœuds
J'ai un fichier XML
<rows>
<head>
<beforeInit>
<call command="attachHeader">
<param>#text_filter,#text_filter,#text_filter,#text_filter,#text_filter,#text_filter</param>
</call>
</beforeInit>
<afterInit>
<call command="enablePaging">
<param>recinfoArea</param>
</call>
</afterInit>
<column width="100" align="center" type="ro" sort="server" color="undefined" id="Id">Id</column>
<column width="100" align="center" type="ro" sort="server" color="undefined" id="NazovProjektu">NazovProjektu</column>
</head>
</rows>
Je voudrais supprimer le beforeInit et afterInit éléments.
J'ai essayé
xml.Elements().Where(e=>e.Name == "beforeInit" || e.Name == "afterInit").Remove();
mais pas de chance.
- Si je connais, je ne le demandez pas 🙂
Vous devez vous connecter pour publier un commentaire.
si vous souhaitez supprimer toutes les occurrences de beforeInit ou afterInit vous pouvez utiliser
(descendants au lieu d'éléments).
les éléments() renvoie une liste de direct nœuds enfants, tandis que les descendants des rendements de chaque nœud.
e.Name
effectivement êtree.Name.LocalName
?Si xml est un XElement, essayez:
Sinon, si c'est un XDocument:
La façon dont il est maintenant, il est mis en place pour les sous-éléments dans
<rows>
, pas<head>
. En d'autres termes Elements() ne renvoie que les enfants directs d'un nœud. Si vous souhaitez que tous les descendants, quel que soit le niveau, vous souhaitez Descendants().