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

VB.NET Discussion :

Linq to xml query vb.net [Débutant]


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 6
    Par défaut Linq to xml query vb.net
    bonjour ,
    je suis débutant en linq , et j'ai besoin de votre aide

    j'ai le fichier 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
    17
    18
    19
    20
    21
    22
    23
    24
    <listgroupe>  
     
      <groupe>
        <sync>up</sync>
        <schema>SCH_BIN</schema>
        <tables>
          <!--<name id="1">CbLogo</name>
          <name id="2">CbStyle</name>
          <name id="3">Resource</name>-->
          <name>CbLogo</name>
          <name>CbStyle</name>
          <name>Resource</name>
        </tables>
      </groupe>
     
      <groupe>
        <sync>Download</sync>
        <schema>SCH_RG</schema>
        <tables>    
          <name>Test</name>
        </tables>
      </groupe>
     
    </listgroupe>


    et j'essaye de récupérer le schema du groupe download : mais la requête suivant me retourne nothing.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim result_schema As IEnumerable(Of String) = From item In xel.Root.Descendants("groupe").Elements("schema")
                                                          Where xel.Root.Descendants("groupe").Elements("sync").Value = "Download"
                                                          Select item.Value
    aussi pour récupérer les tables du groupe ayant schema "x" et sync download
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim resultat_table As IEnumerable(Of XElement) = From item In xel.Root.Descendants("groupe").Elements("tables").Elements("name") ' xel pas xdocuement donc ne pas mettre xel.root.elements...
                                                                 Where xel.Root.Descendants("groupe").Elements("schema").Value = f_element And xel.Root.Descendants("groupe").Elements("sync").Value = "Download"
                                                                 Select item
    Merci à l'avance pour votre aide

  2. #2
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 6
    Par défaut
    cas 1 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Dim liste_schema As IEnumerable(Of String) = xel.Root.Elements("groupe").Where(Function(g) g.Element("sync").Value = "Download").Select(Function(g) g.Element("schema").Value).Distinct()
    cas 2:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    Dim tables_name As IEnumerable(Of IEnumerable(Of XElement)) = From item In xel.Root.Elements("groupe")
                                                                                  Where item.Element("schema").Value = sch_element And item.Element("sync").Value = "Download"
                                                                                  Select item.Element("tables").Elements("name")
     
    If (tables_name.Count <> 0) Then
                        For Each names As IEnumerable(Of XElement) In tables_name
                            For Each name As XElement In names
                                Console.WriteLine(name.Value)
                            Next
                        Next
                    End If

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Query Linq To XML
    Par zeratec dans le forum Linq
    Réponses: 3
    Dernier message: 07/04/2020, 09h53
  2. Réponses: 1
    Dernier message: 30/05/2007, 20h12
  3. Copy/paste dans un fichier xml en VB .Net
    Par RaphTIM dans le forum VB.NET
    Réponses: 2
    Dernier message: 25/05/2007, 21h07
  4. [VB.NET] XML et VB .net
    Par sandytarit dans le forum Services Web
    Réponses: 6
    Dernier message: 14/12/2006, 09h00

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