private void LoadEvents(DateTime date) { string path = Persistence.GetLocalDataDir(); var name = String.Format("herring_events{0:D4}{1:D2}{2:D2}.xml", date.Year, date.Month, date.Day); var serializer = new XmlSerializer(typeof(Log)); var eventsFile = Path.Combine(path, name); if (!File.Exists(eventsFile)) { return; } using (var reader = new StreamReader(eventsFile)) { using (var xml = XmlReader.Create(reader)) { var data = (Log)serializer.Deserialize(xml); Events.Clear(); Events.AddRange(data.Events); } } }
private void StoreEvents(DateTime date) { string path = Persistence.GetLocalDataDir(); var name = String.Format("herring_events{0:D4}{1:D2}{2:D2}.xml", date.Year, date.Month, date.Day); var serializer = new XmlSerializer(typeof(Log)); using (var writer = new StreamWriter(Path.Combine(path, name))) { using (var xml = XmlWriter.Create(writer)) { serializer.Serialize(writer, this); } } }
public static Log Load(GetAppDelegate getApp, DateTime date, out List <string> errors) { Log data = new Log(); string path = Persistence.GetLocalDataDir(); string filePattern = String.Format("herring{0:D4}{1:D2}{2:D2}_*.*", date.Year, date.Month, date.Day); string[] files = Directory.GetFiles(path, filePattern); List <string> errorLines = new List <string>(); foreach (string f in files) { LoadPart(getApp, f, data.Activities, errorLines); } errors = errorLines; data.LoadEvents(date); return(data); }