Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
Web Services, XML
Cambiare il valore di un attributo di un nodo
lunedì 28 maggio 2007 - 10.56
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Simpz
Profilo
| Junior Member
160
messaggi | Data Invio:
lun 28 mag 2007 - 10:56
Ciao a tutti,
Ho bisogno di cambiare il valore di un attributo di un nodo in un file xml.
Per prendere il nodo specificato faccio così:
XmlDocument doc = new XmlDocument();
doc.Load("prova.xml");
XmlNode nodo = doc.SelectSingleNode("espressione xpath");
Poi come faccio a cambiare seccamente il valore di un attributo??? Non devo rigenerare tutto il nodo cancellandolo e rimettendolo dentro vero? qualcuno mi sa dare una dritta?
Grazie a tutti!
Wamba
Profilo
| Expert
722
messaggi | Data Invio:
lun 28 mag 2007 - 11:14
>Ciao a tutti,
Ciao
>Ho bisogno di cambiare il valore di un attributo di un nodo in
>un file xml.
>
>Per prendere il nodo specificato faccio così:
>
>XmlDocument doc = new XmlDocument();
>doc.Load("prova.xml");
>XmlNode nodo = doc.SelectSingleNode("espressione xpath");
>
>Poi come faccio a cambiare seccamente il valore di un attributo???
>Non devo rigenerare tutto il nodo cancellandolo e rimettendolo
>dentro vero? qualcuno mi sa dare una dritta?
>
>Grazie a tutti!
la funzione doc.SelectSingleNode("espressione xpath") restituisce una reference all'oggetto nodo che si trova nel doc. Quindi l'istanza nodo è esattamente la stessa di quella presente nell'oggetto doc.
In altre parola basta modificare l'attributo dentro nodo e questo è modificato anche dentro il nodo scelto dentro doc perchè sono la stessa cosa.
Mi è uscito un discorso un po' contorto (la fretta), ma spero di essere stato chiaro. Se hai dubbi chiedi pure.
-----------------------------------------------------------
Solo chi ha il Caos dentro può generare una stella danzante
Wamba
Simpz
Profilo
| Junior Member
160
messaggi | Data Invio:
lun 28 mag 2007 - 11:24
> In altre parola basta modificare l'attributo dentro nodo e questo è modificato anche dentro il nodo scelto dentro doc perchè sono la stessa cosa.
Nell'XmlNode.Attributes non ho trovato una funzione che mi potesse fare scegliere un attributo specifico, che procedura posso utilizzare? E poi una volta che ho cambiato quel valore, l'istruzione doc.save(path) la devo sempre dare giusto (per salvare il documento modificato)?
Grazie anche della solerzia
nella risposta
Wamba
Profilo
| Expert
722
messaggi | Data Invio:
lun 28 mag 2007 - 11:29
>Nell'XmlNode.Attributes non ho trovato una funzione che mi potesse
>fare scegliere un attributo specifico, che procedura posso utilizzare?
c#
nodo.Attributes["pippo"].Value = "nuovo valore";
vb
nodo.Attributes("pippo").Value = "nuovo valore" 'Questa controllala mi stò arrugginendo con il vb
>E poi una volta che ho cambiato quel valore, l'istruzione doc.save(path)
>la devo sempre dare giusto (per salvare il documento modificato)?
con la modifica che fai sopra viene modificato solo lo stato in ram dell'istanza, quindi si hai sempre bisogno di salvare su disco.
>
>Grazie anche della solerzia
nella risposta
prego figurati
-----------------------------------------------------------
Solo chi ha il Caos dentro può generare una stella danzante
Wamba
Simpz
Profilo
| Junior Member
160
messaggi | Data Invio:
lun 28 mag 2007 - 15:50
ottimo!!!
Grazie mille!!! :)
Wamba
Profilo
| Expert
722
messaggi | Data Invio:
lun 28 mag 2007 - 16:42
ancora, prego
-----------------------------------------------------------
Solo chi ha il Caos dentro può generare una stella danzante
Wamba
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !