remplacer la valeur d'un attibut dans un doc [Résolu] - C#/.NET managed - Programmation
Marsh Posté le 21-03-2006 à 19:49:25
ne serait il pas possible de charger ton xml dans un dataset grâce à la méthode "readxml" du dataset. Faire la modif dans le dataset et de réécrire l'xml grâce à la méthode "writexml" du dataset. A voir.
sinon pour ton problème, utilise "ReplaceChild" (Replaces the child node oldChild with newChild node). ça pourait faire l'affaire. car un attribut est un noeud dans l'arbre DOM. regarde donc de ce coté la.
Apparemment, toutes les propriétés sont read-only dans le XMLNode. Regarde donc de coté la ou éventuellement la propriété Item du node. Peut etre qu'il y a moyen de faire quelque chose avec.
Plus d'informations:
http://msdn.microsoft.com/library/ [...] stopic.asp
Petite remarque:
XmlNodeList styleList = myXmlDocument.SelectNodes("html/head/style" );
Ton document ressemble bien à ça?
<html>
<head><style><img src="..." /></style></head>
</html>
car l'instruction xpath html/head/style n'ira recherché les balises qu'a l'intérieur de style dans head dans html. Donc fait attention à ce que tu fais.
Marsh Posté le 22-03-2006 à 09:04:50
Le dataset c'est peut etre une bonne idée c'est vrai je vais regarder mais c'est un chtit peu lourd. Sinon le replace node ... je te tient au courrant!
Je me suis effectivement trompé pour le html/head/style c'est juste en recopiant le code mais sinon oui c'est ok
Marsh Posté le 22-03-2006 à 14:28:37
oki en chippotant pas mal et via la fonciton ReplaceChild + récursivité j'ai finnalement réussi!
Un grand merci!
Marsh Posté le 15-03-2006 à 09:29:55
Bonjour,
J'ai un document XML (pour etre précis une vue de InfoPath en XSL mais le résultat est le même) dans lequel j'ai des balises
Je chargé mon fichier avec qq chose du genre
Et j'aimerais ajouter un répertoire avant la source de mon image donc que ma balise devienne
J'ai donc essayé
Mais hélas node est une propriété en lecture seule apparemment comment faire alors???
D'avance merci...
Ben
Message édité par the big ben le 22-03-2006 à 14:28:52