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
App. WinForms / WPF .NET
C# File configurazione
lunedì 21 febbraio 2011 - 09.43
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Elenco Tags
C#
|
.NET 4.0
|
Visual Studio 2010
luca.santaniello
Profilo
| Newbie
28
messaggi | Data Invio:
lun 21 feb 2011 - 09:43
Salve a tutti,
vorrei definire un file di configurazione per la mia applicazione, contenente, ad esempio, i parametri di connessione al db. Inizialmente ho utilizzato le Risorse del progetto che riuscivo a leggere utilizzando il comando "ProjName.Properties.Resources.PropName". Purtroppo però tali properties sono modificabili solo dall'ambiente di sviluppo.
Ho letto che è possibile creare anche file di properties in xml ma non so come leggerli dalla mia applicazione.
Mi aiutate?
Grazie in anticipo
AntCiar
Profilo
| Expert
936
messaggi | Data Invio:
lun 21 feb 2011 - 09:50
Ciao.
Crea una classe al livello più basso della tua applicazione e dentro ci metti tutte le variabili di configurazione che ti servono. Ricorda di generare le property Get/Set per ogni variabile. Poi utilizza la serializzazione/deserializzazione per leggere/salvare l'intero blocco di variabili.
Ti faccio un esempio:
Class MyProp
{
string _pathdb = "";
public string PathDB
{
get
{
return _pathdb;
}
set
{
_pathdb= value;
}
}
public void serialize()
{
StreamWriter sr = new StreamWriter(Application.StartupPath + "\\settings.xml", false, System.Text.Encoding.UTF8);
XmlSerializer serializer = new XmlSerializer(typeof(MyProp));
serializer.Serialize(sr, this);
sr.Close();
}
public static MyProp deserialize()
{
try
{
XmlSerializer serializer = new XmlSerializer(typeof(MyProp));
ClientConfig ret;
StreamReader r = new StreamReader(Application.StartupPath + "\\settings.xml");
ret = (MyProp)(serializer.Deserialize(r));
r.Close();
return ret;
}
catch (Exception)
{
return null;
}
}
}
poi quando la devi usare basta fare:
MyProp prp = MyProp.deserialize();
prp.PathDb ........
Poi quando devi salvare (dopo aver dato i valori alle property che ti interessano
prp.serialize()
Ciao
Cristian Barca
luca.santaniello
Profilo
| Newbie
28
messaggi | Data Invio:
lun 21 feb 2011 - 10:15
Grazie mille
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 !