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

Windows Forms Discussion :

XML et problème au niveau du debuggage


Sujet :

Windows Forms

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

    Informations forums :
    Inscription : Juillet 2008
    Messages : 5
    Points : 5
    Points
    5
    Par défaut XML et problème au niveau du debuggage
    Bonjour,

    J'essaie de débugger cette fonction:

    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    private void ParseUpgradeXml(XmlNode currentNode, XmlNode groupNode, string path)
            {
                TreeNode selectednode = treeView.SelectedNode;
     
                foreach (XmlNode childnode in currentNode.ChildNodes)
                {
                    if (childnode.Attributes["type"].Value.Equals("file"))
                    {
                        ParseFileData(childnode, groupNode, path);
                        continue;
                    }
                    string displayName = childnode.Name;
                    try
                    {
                        displayName = childnode.Attributes["displayname"].Value;
                    }
                    catch (FileNotRegisteredYetException) { return; }
     
                    string newPath = path + "." + childnode.Name;
                    treeView.SelectedNode = selectednode.Nodes.Add(newPath, displayName);
     
                    if (childnode.Attributes["type"].Value.Equals("tree"))
                        ParseUpgradeXml(childnode, childnode, newPath);
                    else if (childnode.Attributes["type"].Value.Equals("subtree"))
                        ParseUpgradeXml(childnode, groupNode, newPath);
                }
                treeView.SelectedNode = selectednode;
            }
    En mode debug, ça me renvoit un "La référence d'objet n'est pas définie à une instance d'un objet." pour mon displayName dans le try-catch.


    Malheureusement, je ne vois pas d'où peut provenir cette erreur...Une idée ?

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    1 377
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 377
    Points : 1 628
    Points
    1 628
    Par défaut
    Citation Envoyé par LionelD Voir le message
    Bonjour,

    J'essaie de débugger cette fonction:

    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    private void ParseUpgradeXml(XmlNode currentNode, XmlNode groupNode, string path)
            {
                TreeNode selectednode = treeView.SelectedNode;
     
                foreach (XmlNode childnode in currentNode.ChildNodes)
                {
                    if (childnode.Attributes["type"].Value.Equals("file"))
                    {
                        ParseFileData(childnode, groupNode, path);
                        continue;
                    }
                    string displayName = childnode.Name;
                    try
                    {
                        displayName = childnode.Attributes["displayname"].Value;
                    }
                    catch (FileNotRegisteredYetException) { return; }
     
                    string newPath = path + "." + childnode.Name;
                    treeView.SelectedNode = selectednode.Nodes.Add(newPath, displayName);
     
                    if (childnode.Attributes["type"].Value.Equals("tree"))
                        ParseUpgradeXml(childnode, childnode, newPath);
                    else if (childnode.Attributes["type"].Value.Equals("subtree"))
                        ParseUpgradeXml(childnode, groupNode, newPath);
                }
                treeView.SelectedNode = selectednode;
            }
    En mode debug, ça me renvoit un "La référence d'objet n'est pas définie à une instance d'un objet." pour mon displayName dans le try-catch.


    Malheureusement, je ne vois pas d'où peut provenir cette erreur...Une idée ?
    Ton childnode n'a peut être pas d'attribut "displayname"
    Échouer, c'est avoir la possibilité de recommencer de manière plus intelligente.

    Twitter Blog Mon site

    Mon article sur l'agilité

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

    Informations forums :
    Inscription : Janvier 2009
    Messages : 323
    Points : 128
    Points
    128
    Par défaut
    J'ai souvent cette erreur également ..

    dans,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    childnode.Attributes["displayname"].Value
    il ne faut pas rajouter .ToString(); à la fin ? Je dis ca moi, je dis rien, jsuis assez néophyte mais bon, jtente d'aider

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Février 2004
    Messages
    57
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Février 2004
    Messages : 57
    Points : 71
    Points
    71
    Par défaut
    dans

    displayName = childnode.Attributes["displayname"].Value;

    ce n'est pas childnode qui est null
    -> l'exception serait levée avant

    c'est donc childnode.Attributes["displayname"] qui est null
    ton node courant ne contient pas d'attribut "displayname"

    vérifies ton fichier xml, et la syntax de "displayname"

    tous tes noeux parsés dans :
    foreach (XmlNode childnode in currentNode.ChildNodes)
    doivent contenir un attribut avec exactement le nom "displayname"

    bon courage

Discussions similaires

  1. [Framework] problème au niveau du fichier servlet-context.xml
    Par abdelhakim.kassi dans le forum Spring
    Réponses: 5
    Dernier message: 29/05/2015, 14h25
  2. problème au niveau de struts-config.xml
    Par sonia5 dans le forum Struts 1
    Réponses: 6
    Dernier message: 24/06/2010, 08h31
  3. [XML::PARSER] Problème d'encodage
    Par frangin2003 dans le forum Modules
    Réponses: 13
    Dernier message: 05/09/2005, 14h59
  4. [XML word] problème pour créer des puces
    Par ratapapa dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 21/07/2005, 13h52
  5. [DNS MX]Avec DynDNS.org, problème au niveau du MX
    Par Swoög dans le forum Développement
    Réponses: 9
    Dernier message: 24/08/2004, 22h00

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