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 :

SiteMap XMLNode Lecture attribut


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    135
    Détails du profil
    Informations personnelles :
    Localisation : Royaume-Uni

    Informations forums :
    Inscription : Avril 2007
    Messages : 135
    Par défaut SiteMap XMLNode Lecture attribut
    Bonjour,

    J'essaie de lire des attributs de mon sitemap comme un fichier XML. Mais je n'arrive pas à obtenir les valeurs des attributs des noeuds.

    Voila en gros ce que je fais:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    XmlDocument doc = new XmlDocument();
    doc.Load(Server.MapPath("Web.sitemap"));
     
    XmlNode itemtotreat= doc.SelectSingleNode("//siteMapNode[@title='"Racine"']");
     
    string value = itemtotreat.Attributes["url"].Value;
    Malheureusement mon Node est toujours null.....

    Avez-vous une idée ? un commentaire ? un exemple ?

    D'avance merci beaucoup

  2. #2
    Rédacteur
    Avatar de Paul Musso
    Profil pro
    Inscrit en
    Août 2008
    Messages
    368
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2008
    Messages : 368
    Par défaut
    Bonjour,

    Voici un exemple avec une requête LinQ To XML :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    XDocument doc = XDocument.Load(Server.MapPath("Web.sitemap"));
    var requete = from node in doc.Descendants("siteMapNode")
    where node.Attribute("title").Value == "Racine"
    select node.Attribute("url");
     
    requete.ToList().ForEach(attr => Console.WriteLine(attr.Value));
    Console.Read();

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    135
    Détails du profil
    Informations personnelles :
    Localisation : Royaume-Uni

    Informations forums :
    Inscription : Avril 2007
    Messages : 135
    Par défaut
    Merci bcp.... mais je n'utilise pas encore LinQ ...

    Et il y a peu de ressemblance avec une methode "old school"...

    d'autres idées ?

  4. #4
    Rédacteur
    Avatar de Paul Musso
    Profil pro
    Inscrit en
    Août 2008
    Messages
    368
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2008
    Messages : 368
    Par défaut
    Je viens de tester ton code à l'exception de la ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Server.MapPath("Web.sitemap")
    Et la requête XPath est bonne, j'arrive très bien à récupérer le noeud siteMapNode et l'attribut url.

    Est-tu sûr tout d'abord que ton fichier XML est bien chargé comme il faut dans ton objet XmlDocument ? En debug, regarde dans la propriété OuterXml de ton objet pour être sûr.

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 02/04/2008, 23h10
  2. [PERL] lecture attribut avec DOM
    Par guenaule dans le forum APIs
    Réponses: 2
    Dernier message: 18/03/2008, 18h43
  3. [VB6]Lecture d'attributs XML
    Par BouB dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 15/05/2006, 16h01
  4. Réponses: 1
    Dernier message: 14/03/2006, 11h24
  5. Problème d'attribut de lecture seule sur des dossiers
    Par Redbull dans le forum Sécurité
    Réponses: 2
    Dernier message: 09/08/2005, 09h52

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