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 :

Ajout de donnée XML avec Xpath


Sujet :

C#

  1. #1
    Membre averti Avatar de megamario
    Homme Profil pro
    VB6/VB.net/C/C++/C#
    Inscrit en
    Septembre 2008
    Messages
    929
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : VB6/VB.net/C/C++/C#
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2008
    Messages : 929
    Points : 312
    Points
    312
    Par défaut Ajout de donnée XML avec Xpath
    Bonjour à tous,

    Je doit gérer un fichier XML.

    J'ai choisi d'utilisé les Objets Xpath.

    Pour la lecture pas de souci.

    mais pour ajouter des données je suis embêté. J'ai suivit l'excellent tuto trouvé sur ce site de M. Determe. Mais Visual m'indique une erreur
    La méthode spécifiée n'est pas prise en charge.
    Merci de votre aide car je vois vraiment pas ou est le problème.

    Voici un morceau de mon XML :
    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    <config>
    <type version="truc1" connexion = "Login1">
        <mesures>
          <item>
            <Nom>U Batterie</Nom>
            <Obj>Code1</Obj>
            <Ind>2</Ind>
            <Format>100</Format>
            <Unit>V</Unit>
          </item>
          <item>
            <Nom>I Batterie</Nom>
            <Obj>Code2</Obj>
            <Ind>3</Ind>
            <Format>100</Format>
            <Unit>A</Unit>
          </item>
        </mesures>
        <etat>
          <item>
            <Nom>CFD</Nom>
            <Obj>Code3</Obj>
            <Ind>9</Ind>
            <Format>100</Format>
    		<Unit></Unit>
          </item>
          <item>
            <Nom>Alarm</Nom>
            <Obj>Code4</Obj>
            <Ind>8</Ind>
            <Format>100</Format>
    		<Unit></Unit>
          </item>
        </etat>
      </type>
      <type version = "truc2" connexion = "Login2">
         Même principe répéter plusieurs fois
      </type>
    </config>
    Et voici mon code pour modifier:
    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
     
           public bool AjouterSupervision(string FichierXML, string Module, string log)
            {
                int Nb;
                DocXML = new XPathDocument(FichierXML);
                Navig = DocXML.CreateNavigator();
                ExpXPath = "//config";
                MaNavi = Navig.Select(Navig.Compile(ExpXPath));
                MaNavi.MoveNext();
                MaNavi.Current.InsertElementAfter("", "type", "", ""); // il me met l'erreur ICI "La méthode spécifiée n'est pas prise en charge."
    , en débuggeant je vois bien qu il est a la position 1.
                MaNavi.Current.CreateAttribute("", "version", "", Module);
                MaNavi.Current.CreateAttribute("", "connexion", "", log);
                MaNavi.Current.AppendChildElement("", "mesures", "", "");
                MaNavi.Current.AppendChildElement("", "etat", "", "");
                return true;
            }
    Merci de votre aide.

  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
    XPathDocument donne un accès en lecture seule au document. Utilise la classe XmlDocument si tu veux modifier le XML.
    Pas de questions techniques par MP

  3. #3
    Membre averti Avatar de megamario
    Homme Profil pro
    VB6/VB.net/C/C++/C#
    Inscrit en
    Septembre 2008
    Messages
    929
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : VB6/VB.net/C/C++/C#
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2008
    Messages : 929
    Points : 312
    Points
    312
    Par défaut
    Citation Envoyé par StormimOn Voir le message
    XPathDocument donne un accès en lecture seule au document. Utilise la classe XmlDocument si tu veux modifier le XML.

    Merci, j'ai vraiment déconner car effectivement j'avais les code sous les yeux et dans le tuto il l'ouvre bien avec XMLDocument.

    J'ai vraiment aucune excuse. Je test sa.

    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
    Dans le tuto il utilise XPathDocument pour les recherches (lecture seule donc), mais un XmlDocument dès qu'il faut modifier les données
    Pas de questions techniques par MP

  5. #5
    Membre averti Avatar de megamario
    Homme Profil pro
    VB6/VB.net/C/C++/C#
    Inscrit en
    Septembre 2008
    Messages
    929
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : VB6/VB.net/C/C++/C#
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2008
    Messages : 929
    Points : 312
    Points
    312
    Par défaut
    Citation Envoyé par StormimOn Voir le message
    Dans le tuto il utilise XPathDocument pour les recherches (lecture seule donc), mais un XmlDocument dès qu'il faut modifier les données
    Oui merci, je viens tout juste de voir, mon erreur alors que je suis dessus.

    je viens de modifier mon précèdent post car j'ai aucune excuse. merci encore

  6. #6
    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
    Pas de soucis

    Un petit clic sur et on en parle plus
    Pas de questions techniques par MP

Discussions similaires

  1. Problème pour lire un fichier Xml avec Xpath
    Par adrix26 dans le forum VB.NET
    Réponses: 1
    Dernier message: 06/11/2008, 17h06
  2. Afficher mes données XML avec un Combobox
    Par tatata dans le forum ActionScript 3
    Réponses: 4
    Dernier message: 09/06/2008, 13h57
  3. [SimpleXML] recuperer données xml avec simplexml
    Par astrolane dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 29/08/2007, 14h39
  4. probleme d'affichage de données XML avec XSL
    Par sundjata dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 08/06/2006, 18h59

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