Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1017 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [C# XmlDocument] Ajout d'un noeud d'un document dans un autre ...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C# XmlDocument] Ajout d'un noeud d'un document dans un autre ...

n°1438248
Clarkent
Musclor le shérif de l'espace
Posté le 07-09-2006 à 12:44:46  profilanswer
 

Hello,
 
Je reçois, via une méthode, un XmlDocument, ce XmlDocument je dois rajouter son contenu dans un autre XmlDocument, c'est a dire que le root du premier XmlDocument, devient le fils du nouveau document.
 
Nous avons le document A :

Code :
  1. <A>
  2.     <premier elem>
  3.         <fils elem>
  4.         </fils elem>
  5.     </premier elem>
  6.     <deuxieme elem>
  7.     </deuxieme elem>
  8. </A>


 
document B :

Code :
  1. <root></root>


 
Et je veux obtenir :

Code :
  1. <root>
  2.     <A>
  3.         <premier elem>
  4.             <fils elem>
  5.             </fils elem>
  6.        </premier elem>
  7.        <deuxieme elem>
  8.        </deuxieme elem>
  9.     </A>
  10. </root>


 
 
J'ai testé pas mal de truc, le append child le importnote, mais je dois très sérieusement mal m'y prendre, dernièrement il me disait que les contextes de documents ne correspondaient pas :(.
 
Une soluce :'( ?
 
par la suite j'aurai plusierus document de type A, et en faitle document B contiendra tous les doc A:

Code :
  1. <root>
  2.     <A>
  3.         <premier elem>
  4.             <fils elem>
  5.             </fils elem>
  6.        </premier elem>
  7.        <deuxieme elem>
  8.        </deuxieme elem>
  9.     </A>
  10.     <A>
  11.         <premier elem>
  12.             <fils elem>
  13.             </fils elem>
  14.        </premier elem>
  15.        <deuxieme elem>
  16.        </deuxieme elem>
  17.     </A>
  18.     <A>
  19.         <premier elem>
  20.             <fils elem>
  21.             </fils elem>
  22.        </premier elem>
  23.        <deuxieme elem>
  24.        </deuxieme elem>
  25.     </A>
  26. .
  27. .
  28. .
  29. </root>

Message cité 1 fois
Message édité par Clarkent le 07-09-2006 à 15:19:49

---------------
"PAR LE POUVOIR DU CRÂNE ANCESTRAL, JE DETIENS LA FORCE TOUTE PUISSANTE".
mood
Publicité
Posté le 07-09-2006 à 12:44:46  profilanswer
 

n°1438292
_darkalt3_
Proctopathe
Posté le 07-09-2006 à 13:48:42  profilanswer
 

Clarkent a écrit :

le happend child le importnote[/cpp]


c'est une blague ?
 
Sinon,  
t'as une méthode pour obtenir la liste des noeuds du noeud "root", il te suffit de parcourir cette nodelist et de concaténer ces noeud  au noeud que tu veux construire.


---------------
Töp of the plöp
n°1438342
Clarkent
Musclor le shérif de l'espace
Posté le 07-09-2006 à 14:25:17  profilanswer
 

_darkalt3_ a écrit :

c'est une blague ?
 
Sinon,  
t'as une méthode pour obtenir la liste des noeuds du noeud "root", il te suffit de parcourir cette nodelist et de concaténer ces noeud  au noeud que tu veux construire.


En quoi ca serait une blague ?
le importnode : Imports a node from another document to the current document.
La méthode ImportNode est le mécanisme par lequel un nœud ou un sous-arbre de nœuds tout entier est copié d'un XmlDocument à un autre.
 
AppendChild : ajoute le noeud spécifié a la fin de la liste des noeuds enfin de ce noeud.
 
Pourquoi ca ne fonctionnerait pas ?
 
Pour ta soluce ok, je vais essayer de faire ça, je pensis qu'il etait plus simple de rajouter tout ça.


Message édité par Clarkent le 07-09-2006 à 15:06:51

---------------
"PAR LE POUVOIR DU CRÂNE ANCESTRAL, JE DETIENS LA FORCE TOUTE PUISSANTE".
n°1438428
Clarkent
Musclor le shérif de l'espace
Posté le 07-09-2006 à 15:16:03  profilanswer
 

et bien importnote et appendchild c'est ok, je viens d'y arriver :D suffisait de comprendre ce que faisait reellement ces deux fonctions.
Je vois tjs pas ce qu'il y avait comme blague, enfin peut etre queje vais dechanter dans quelques mins :D, en tous cas pas eu besoin de parcourir tous les noeuds.


---------------
"PAR LE POUVOIR DU CRÂNE ANCESTRAL, JE DETIENS LA FORCE TOUTE PUISSANTE".
n°1438431
_darkalt3_
Proctopathe
Posté le 07-09-2006 à 15:17:51  profilanswer
 

Clarkent a écrit :

et bien importnote et appendchild c'est ok, je viens d'y arriver :D suffisait de comprendre ce que faisait reellement ces deux fonctions.
Je vois tjs pas ce qu'il y avait comme blague, enfin peut etre queje vais dechanter dans quelques mins :D, en tous cas pas eu besoin de parcourir tous les noeuds.


ok pour la soluce;
 
sinon pour la blague:

Citation :

happend child


 
Vraiment, tu vois pas ? [:god]


---------------
Töp of the plöp
n°1438435
Clarkent
Musclor le shérif de l'espace
Posté le 07-09-2006 à 15:22:48  profilanswer
 

mais euhhhhh :'(.
 
donc, je n'ai pas eu le temps de tester toutes les méthodes, car les méthodes d'ajout de noeud y en a une pletore.
 
Donc on se trouve surel fichier source, on selectionne le noeud que l'on veut, on fait  
xmlNode noeud = docD.importNode(docS.documentElement ... )
DocS.appendChild(noeud)
 
:D.


---------------
"PAR LE POUVOIR DU CRÂNE ANCESTRAL, JE DETIENS LA FORCE TOUTE PUISSANTE".

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [C# XmlDocument] Ajout d'un noeud d'un document dans un autre ...

 

Sujets relatifs
ajout de valeurAjout d'un deuxième écran
Problème avec Range et ajout de commentairesAjout d'options via un popup
document.write et phpajout dynamique de variables dans un objet
Ajout d'une cellule dans table = plus dans le formdocument.element has no properties
recherche dans un document xml avec xslOuvrir un document Word publipostage à un enregistrement préci
Plus de sujets relatifs à : [C# XmlDocument] Ajout d'un noeud d'un document dans un autre ...


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR