Ich habe diesen Code, der eine XML-Datei erstellt und speichert, ob ein Kontrollkästchen wahr oder falsch ist. Es wirdC# Serializable Objekt XML-Datei Speicherort
beim Anwendungsstart liest[Serializable()]
[XmlRoot("Store", Namespace = "")]
public class Credentials
{
public Credentials() { }
public bool checkBox1State { get; set; }
public static Credentials ReadCredentials()
{
XmlSerializer reader = new XmlSerializer(typeof(Credentials));
System.IO.StreamReader file = new System.IO.StreamReader("Credentials.xml");
Credentials data = new Credentials();
data = (Credentials)reader.Deserialize(file);
file.Close();
return data;
}
public static void WriteCredentials(Credentials data)
{
XmlSerializer writer = new XmlSerializer(typeof(Credentials));
System.IO.StreamWriter file = new System.IO.StreamWriter("Credentials.xml");
writer.Serialize(file, data);
file.Close();
}
}
Mein Programm liest und perfekt aus der XML-Datei schreibt. Ich habe jedoch festgestellt, dass dies im Stammverzeichnis gespeichert ist, von dem die EXE gestartet wurde. In der Regel wird dies in den Programmdateien enthalten sein, für die erhöhte Berechtigungen zum Schreiben erforderlich sind.
Als solche möchte ich diese Datei im AppData-Ordner des Benutzers speichern. Welche Änderungen sind an meinem Code erforderlich, um dies zu ermöglichen?
Dank
Danke, es funktioniert super. Weiß nicht wie ich das übersehen habe – nerdalert