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 :

[DEBUTANT] Variable dans un XPATH


Sujet :

C#

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 70
    Points : 57
    Points
    57
    Par défaut [DEBUTANT] Variable dans un XPATH
    Bonjour tous le monde,

    J'ai un petit soucis j'ai une requete xpath qui fonctionne lorsque qu'elle est en "dur" mais des que je veux remplacer la valeur par une varaible sa coince aucun message d'erreur mais aucun resultat retourné...

    Ceci marche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    "//voiture[num=002]//marque"
    Mais ceci ne marche pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    "//voiture[num='" + codeMarque + "']//marque"
    Ni ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ("//voiture[num={0}]//marque", codeMarque);
    Y a t-il une syntaxe spécifique pour concaténer ?

    Je vous remercie par avance !

  2. #2
    Expert éminent
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Points : 7 660
    Points
    7 660
    Par défaut
    Je suis étonné que ta première syntaxe fonctionne car, de ce que j'en connais, il faut indiquer un @ lorsque l'on teste les attributs.

    Quelque chose comme ceci fonctionne très bien chez moi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    string xpathQuery = string.Format("//voiture[@num='{0}']//marque", codeMarque);
    A condition que la requête trouve des noeuds correspondants bien évidemment.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 70
    Points : 57
    Points
    57
    Par défaut
    Merci,

    mais cela fonctionne toujours pas :s

    Voici mon code peut etre que l'erreur viens d'autres part
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    int codeMarque = 002;
    string xpathQuery = string.Format("//voiture[@num='{0}']//marque", codeMarque);
    XmlNodeList noeudsVoiture = XmlVoitures.SelectNodes("xpathQuery");
    Alors que ceci fonctionne sans le @ et des que j'ajoute @ cela ne retourne plus rien :s
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    XmlNodeList noeudsVoiture = XmlVoitures.SelectNodes("//voiture[num='002']//marque");
    Merci.

  4. #4
    Expert éminent
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Points : 7 660
    Points
    7 660
    Par défaut
    Avec ce code, ta requête XPath est "xpathQuery"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    XmlNodeList noeudsVoiture = XmlVoitures.SelectNodes("xpathQuery");
    Avec ce code, ta requête XPath est le contenu de la variable xpathQuery
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    XmlNodeList noeudsVoiture = XmlVoitures.SelectNodes(xpathQuery);

  5. #5
    Membre averti Avatar de bellak
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2008
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2008
    Messages : 325
    Points : 341
    Points
    341
    Par défaut
    Salut ,
    je pense que le probleme est la :
    int codeMarque = 002;
    le 002 devient 2 , alors si le fichier contient 002 la requete ne va pas trouver le 2 .

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 201
    Points : 196
    Points
    196
    Par défaut
    Avec les deux réponses du dessus tout est corrigé

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 70
    Points : 57
    Points
    57
    Par défaut
    Merci beaucoup à tous ! çà marche !
    merci !

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

Discussions similaires

  1. [Debutant] Variables dans requete SQL
    Par Freygolow dans le forum C#
    Réponses: 11
    Dernier message: 21/05/2008, 09h14
  2. [XSL-FO] Variable dans un Xpath
    Par serwol dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 14/03/2006, 13h57
  3. [debutant]gérer plusieurs variables dans un for ?
    Par Merfolk dans le forum Débuter
    Réponses: 5
    Dernier message: 09/03/2006, 21h01
  4. [XSL] impossible d'utiliser variable dans expression XPATH
    Par pierre.zelb dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 18/01/2006, 07h41
  5. DEBUTANT Lire dans une variable type CString
    Par Hokagge dans le forum MFC
    Réponses: 2
    Dernier message: 01/12/2005, 10h53

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