using System.Collections.ObjectModel; using System.Runtime.Serialization; using System.Xml; using Microsoft.VisualBasic; using Microsoft.VisualBasic.FileIO; using Model; using System.Runtime.InteropServices; namespace StimPersistance { public class Persistance : IPersistance { public Persistance(string chemin) { Directory.SetCurrentDirectory(chemin); } public void SaveGame(ObservableCollection games) { XmlWriterSettings settings = new() { Indent = true }; DataContractSerializer serializer = new(typeof(ObservableCollection)); if (!File.Exists("games.xml")) File.Create("games.xml"); using (TextWriter tw = File.CreateText("games.xml")) using (XmlWriter writer = XmlWriter.Create(tw, settings)) serializer.WriteObject(writer, games); } public void SaveUser(List users) { throw new NotImplementedException(); } public ObservableCollection LoadGame() { if (File.Exists("games.xml")) { DataContractSerializer serializer = new(typeof(ObservableCollection)); using (Stream stream = File.OpenRead("games.xml")) return serializer.ReadObject(stream) as ObservableCollection; } return new(); } public List LoadUser() { throw new NotImplementedException(); } } }