Obtenir toutes les valeurs des attributs des nœuds à partir d'un Fichier XML
J'ai créé un fichier xml comme ci-dessous
<Engagements>
<User name ="jjjj">
<Engagement id="1111"/>
</User>
<User name ="kkkk">
<Engagement id="2222"/>
</User>
</Engagements>
J'ai besoin d'obtenir toutes les valeurs d'id de tous les Engagement
nœuds.
C'est ce que j'ai actuellement:
public static void ParseXml(XmlDocument xmlFile)
{
XmlNodeList nodes = xmlFile.SelectNodes("//Engagement");
foreach (XmlNode node in nodes)
{
//What goes here?
}
}
- Qu'avez-vous essayé? Merci de poster votre code actuel et expliquer où vous êtes coincé.
- Vous avez deux
Engagement
nœuds. Dont le numéro que vous voulez? - Je veux obtenir tous les id de nœud de l'Engagement
- veuillez voir le commentaire monté
- public static void ParseXml(XmlDocument xmlFile) { XmlNodeList nœuds = xmlFile.SelectNodes("//l'Engagement"); foreach (XmlNode nœud en noeuds) { } }
- Merci d'éditer votre question à ajouter des détails au lieu de dans les commentaires. Les commentaires ne sont pas un bon endroit pour poster du code.
Vous devez vous connecter pour publier un commentaire.
Utiliser LINQ to XML:
Vous pouvez utiliser le code suivant pour obtenir tous les id dans une liste
Si d'autres réponses ne le faites pas pour vous, peut-être vous montrant la réponse dans le même contexte, vous êtes coincé dans:
Si vous voulez seulement l'attribut partie des nœuds qui ont un
id
attribut, vous pouvez restreindre votre Requête XPath en précisant que vous avez besoin de cet attribut et le sélectionner comme ceci:XmlNodeList nodes = xmlFile.SelectNodes("//Engagement[@id]/@id");
Chaque nœud retourné avec cette requête sera un attribut d'ID de nœud, de sorte que vous pouvez obtenir la valeur de votre boucle à l'aide de
node.Value
.var xmlString = "";