using System.Xml.Serialization; using Aufgabe7; Console.WriteLine("Willkommen zu Aufgabe7"); Employee Mitarbeiter1 = new Employee("Petra", "Maier", Gender.Female); Employee Mitarbeiter2 = new Employee("Herbert", "Müller", Gender.Male); // Ich hab die Aufgabe zuerst wie beschrieben bearbeitet, // mich dann gefragt was passiert wenn man mehre Personen anlegen will. // Nachdem dies mit der gewollten Lösung nicht ging (zumindest meiner), // hab etwas nach eigenem Geschmack experimentiert. List employees = new List() { Mitarbeiter1, Mitarbeiter2 }; Employee.SerializeAll(employees); foreach (Employee employee in Employee.DeserializeAll()) { Console.WriteLine($"Vorname: {employee.FirstName}, " + $"Nachname: {employee.LastName}, " + $"Gender: {employee.Gender}"); } [Serializable] public class Employee { public string FirstName { get; set; } public string LastName { get; set; } public Gender Gender { get; set; } public Employee(){} public Employee(string firstName, string lastName, Gender gender) { this.FirstName = firstName; this.LastName = lastName; this.Gender = gender; } public static void SerializeAll(List employees) { XmlSerializer serializer = new XmlSerializer(typeof(List)); using (var stream = new FileStream(@"..\Personen.xml", FileMode.Create)) { serializer.Serialize(stream, employees); } } public static List DeserializeAll() { XmlSerializer serializer = new XmlSerializer(typeof(List)); using (var stream = new FileStream(@"..\Personen.xml", FileMode.Open)) { return (List)serializer.Deserialize(stream); } } }