Gestione XML

giovedì 18 maggio 2006 - 08.56

Teech Profilo | Expert

Ho creato una classe per gestire un file XML di configurazione della mia soluzione. Questa classe la richiamo per leggere le configurazioni da file e quando premo un tasto Salva nella maschera per gestire le configurazioni stesse.
Public Class Configurazioni Private _file As String Private strSQLUsr As String Private strSQLPwd As String Private strDirIcone As String Private xmlConfig As System.Xml.XmlDocument Private Sub ReadConfig(ByVal elem As System.Xml.XmlNode) Dim node As System.Xml.XmlNode For Each node In elem.ChildNodes If node.HasChildNodes Then ReadConfig(node) Select Case node.Name Case "SQLUsr" strSQLUsr = node.InnerText Case "SQLPwd" strSQLPwd = ppw.Decripta(node.InnerText) Case "Icone" strDirIcone = node.InnerText End Select Next End Sub Private Sub WriteConfig(ByVal elem As System.Xml.XmlNode) Dim node As System.Xml.XmlNode For Each node In elem.ChildNodes If node.HasChildNodes Then WriteConfig(node) Select Case node.Name Case "SQLUsr" node.InnerText = strSQLUsr Case "SQLPwd" node.InnerText = ppw.Cripta(strSQLPwd) Case "Icone" node.InnerText = strDirIcone End Select Next End Sub Sub New(ByVal file As String) _file = file 'Costruttore della classe 'Legge il file configurazioni xmlConfig = New System.Xml.XmlDocument 'Apertura file XML xmlConfig.Load(_file) ReadConfig(xmlConfig.DocumentElement) End Sub Sub Save() 'Legge il file configurazioni xmlConfig = New System.Xml.XmlDocument 'Apertura file XML xmlConfig.Load(_file) 'Aggiorna i nodi, scive il file e lo rilegge WriteConfig(xmlConfig.DocumentElement) xmlConfig.Save(_file) ReadConfig(xmlConfig.DocumentElement) End Sub ReadOnly Property FileConfig() As String Get Return _file End Get End Property Property User() As String 'Proprietà UTENTE CONNESSIONE Get Return strSQLUsr End Get Set(ByVal Value As String) strSQLUsr = Value End Set End Property Property Password() As String 'Proprietà PASSWORD CONNESSIONE Get Return strSQLPwd End Get Set(ByVal Value As String) strSQLPwd = Value End Set End Property Property DirIcone() As String Get Return strDirIcone End Get Set(ByVal Value As String) strDirIcone = Value End Set End Property End Class

Nel costruttore apro il file XML e leggo il contenuto attraverso la Sub ReadConfig e tutto funziona correttamente.
Quello che mi pare strano è che per scrivere il file (Sub WriteConfig) devo riaprire il file (che non è mai stato chiuso in precedenza).
Stò sbagliando qualcosa? Eventualmente come si chiude il file?

Grazie per le dritte!!!
--------------
Maurizio Brini
--------------
Nessuna impresa è mai stata compiuta da un uomo ragionevole

Teech Profilo | Expert

Ma nel modo che mi consigli non riesco poi a fare un controllo ricorsivo su tutti i nodi del file XML... o sbaglio?
Esiste eventualmente un modo per chiudere il file? una cosa tipo XMLFile.Close o XMLFile.Unload?
Esistendo il metodo Load pensavo esistesse anche un metodo "opposto", o per chiuderlo è sufficiente chiudere l'istanza di XMLFile con
XMLFile=Nothing?

Grazie dell'interessamento.
--------------
Maurizio Brini
--------------
Nessuna impresa è mai stata compiuta da un uomo ragionevole
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 !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5