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

ASP.NET Discussion :

Comment retrouver un noeud en utilisant un XmlDocument et XPath?


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut Comment retrouver un noeud en utilisant un XmlDocument et XPath?
    Bonjour,

    J'ai un fichier XML dans lequel j'ai un noeud du type :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <?xml version="1.0" encoding="utf-8"?>
    <Users>
        <User>
            <u_id>1</u_id>
            <u_login>Dave</u_login>
            <u_password>123</u_password>
        </User>
        <User>
            <u_id>2</u_id>
            <u_login>Agnès</u_login>
            <u_password>123</u_password>
        </User>
    </Users>
    Je desire avec une requete xpath verifier si par exemple :
    <u_login> == Dave && <u_password> == 123

    Est ce possible ?

    Pour l'instant voila mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     var doc = new XPathDocument(path); 
                XPathNavigator nav = doc.CreateNavigator();
                XPathNodeIterator xit = nav.Select("descendant::Users/User/u_login");
                int position;
                while (xit.MoveNext())
                {
                    if (xit.Current.Value == login)
                    {}
    Merci

  2. #2
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut
    J'ai trouvé une soluce mais je ne sais pas si c'est la bonne.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
     string path = @"C:\MyKnowledgeManagement\User.xml";
                XmlTextReader reader = new XmlTextReader(path);
                XmlDocument doc = new XmlDocument();
                doc.Load(reader);
                reader.Close();
                XmlNode loginFind, passwordFind;
                XmlElement root = doc.DocumentElement;
                loginFind = root.SelectSingleNode("/Users/User[u_login='" + login + "']");
                passwordFind = root.SelectSingleNode("/Users/User[u_password='" + password + "']");
     
                if (loginFind != null && passwordFind != null)
                    return true;
     
                return false;

  3. #3
    Expert confirmé
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Par défaut
    Salut,

    Ca parait pas mal.
    Un XmlDocument se justifie quand le fichier n'est pas trop volumineux.

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

Discussions similaires

  1. [Conseils] Comment retrouver un problème
    Par Shoryu dans le forum Sondages et Débats
    Réponses: 67
    Dernier message: 03/11/2006, 13h26
  2. Réponses: 2
    Dernier message: 26/04/2006, 09h34
  3. Réponses: 3
    Dernier message: 17/11/2005, 15h41
  4. Comment retrouver les menus complets de Access ???
    Par sweety107 dans le forum Access
    Réponses: 3
    Dernier message: 20/12/2004, 11h33
  5. Comment retrouver les propriétés d'un fichier ?
    Par JuanLopez1966 dans le forum x86 32-bits / 64-bits
    Réponses: 1
    Dernier message: 01/09/2004, 16h34

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