IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Parser XML avec LINQ


Sujet :

C#

  1. #1
    Membre à l'essai
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Avril 2020
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Avril 2020
    Messages : 28
    Points : 21
    Points
    21
    Par défaut Parser XML avec LINQ
    Bonjour,

    Avec C# .NET, j'utilise LINQ pour parser du XML, mais je ne maîtrise pas totalement LINQ pour XML.

    J'ai le code XML suivant :

    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    <?xml version="1.0" encoding="utf-8" ?>
     
    <Root>
      <PackageVersion version="1.0"/>
      <Window title="test">
    	<ComboBox label="labelTest1">
    		<item>article1</item>
    		<item>article2</item>
    		<item>article3</item>
    	</ComboBox>
    	<ComboBox label="labelTest2">
    		<item>base1</item>
    		<item>base2</item>
    	</ComboBox>
      </Window>  
    </Root>


    J'aimerais récupérer dans ce fichier XML, plusieurs informations comme la version, le titre et les items.


    Pour récupérer la version, voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    IEnumerable<string> version = from item in xelement.Elements("PackageVersion")
                                                      select (string)item.Attribute("version");
                Console.WriteLine("Version : {0}", version.First());
    Pour récupérer le titre, voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    IEnumerable<string> title = from item in xelement.Elements("Window")
                                                  select (string)item.Attribute("title");
                Console.WriteLine("Title : {0}", title.First());

    Si vous avez une meilleure manière d'écrire les deux codes précédents, pourriez-vous le montrer ? Merci.

    Je bloque sur la récupération de chaque comboBox avec son label et ses items.
    J'aimerais mettre dans deux List<string> chaque item en string.

    Par exemple, la liste listComboBox1 contiendrait article1, article2 et article3.
    La liste listComboBox2 contiendrait base1 et base2.
    J'ai essayé avec le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    IEnumerable<XElement> combos = xelement.Elements("Window").Elements("ComboBox").Elements("item");
                foreach (var combo in combos)
                {     
                    Console.WriteLine(combo.Value);
                }
    mais je récupère tous les items d'un coup et je ne les sépare pas.

    Je n'arrive pas à séparer en deux listes les items de chaque comboBox.

    J'aimerais aussi récupérer séparément le label de chaque combobox séparément.


    Merci de votre aide.

  2. #2
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 674
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 674
    Points : 5 259
    Points
    5 259
    Par défaut
    Ce serait plus facile avec la sérialisation.
    T'as plus qu'à faire une recherche Google dessus.

Discussions similaires

  1. Réponses: 9
    Dernier message: 12/11/2010, 06h17
  2. parser xml avec pl/sql
    Par opensource dans le forum PL/SQL
    Réponses: 0
    Dernier message: 21/01/2010, 20h09
  3. [DOM] Parser XML avec DOM
    Par webrider dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 31/01/2008, 12h45
  4. parser xml avec linux
    Par nemya dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 06/04/2006, 10h49
  5. [XML] [EXPAT] Parser XML avec PHP
    Par glsn dans le forum Bibliothèques et frameworks
    Réponses: 8
    Dernier message: 20/12/2005, 12h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo