4
Speichern von Einstellungen in C# mit AppSettings
Wie speichert man eigentlich schnell und einfach Einstellungen in C# Anwendungen? Diese Frage hat sich sicherlich jeder einmal in seiner C# Laufbahn gestellt und die Antwort ist so simpel. Am einfachsten geht es mit den AppSettings des ConfigurationManager im .Net-Frameworks.
Das .Net-Framework bringt nämlich gleich einen eigenen Manager zum verwalten und speichern von Einstellungen mit sich. Die Eigenschaften werden im gebräuchlichen XML-Format abgelegt. Und damit ihr seht, dass der Umgang mit den AppSettings wirklich ein Kinderspiel ist, habe ich euch zwei kleine Methoden zum Speichern/Ändern und Auslesen von Einstellungen geschrieben.
public string getAppSetting(string key)
{
//Laden der AppSettings
Configuration config = ConfigurationManager.OpenExeConfiguration(
System.Reflection.Assembly.GetExecutingAssembly().Location);
//Zurückgeben der dem Key zugehörigen Value
return config.AppSettings.Settings[key].Value;
}
public void setAppSetting(string key, string value)
{
//Laden der AppSettings
Configuration config = ConfigurationManager.OpenExeConfiguration(
System.Reflection.Assembly.GetExecutingAssembly().Location);
//Überprüfen ob Key existiert
if (config.AppSettings.Settings[key] != null)
{
//Key existiert. Löschen des Keys zum "überschreiben"
config.AppSettings.Settings.Remove(key);
}
//Anlegen eines neuen KeyValue-Paars
config.AppSettings.Settings.Add(key, value);
//Speichern der aktualisierten AppSettings
config.Save(ConfigurationSaveMode.Modified);
}
Sieht doch ganz einfach aus, oder?
Viele Grüße,
Raffi

[...] Wunsch eines Lesers gibt es heute mal eine Runde C# Basics. Nach dem ich ein kleines Snippet zum Umgang mit den AppSettings verbloggt hatte, wurde ich gefragt, wie man denn nun eigentlich mit Hilfe des Snippets [...]
Danke,
könntest aber auch gerne mal posten wie ich zB eingaben speichere. zB. habe ich jetzt in TextboxName einen Namen stehen, der beim nächsten Start der Anwendung wieder da drinne stehen soll. :)
Klar, kann ich gerne machen. Artikel kommt dann aller Vorraussicht nach morgen. Möchtest du eine Info oder hast du den RSS-Feed eh abonniert?
Hab deinen Blog in der Opera Schnellwahl, da klick ich eh immer drauf *g Und danke schon mal!