private static void SaveAllHistory(RunHistoryList history) { var sh = new System.Xml.Serialization.XmlSerializer(typeof(RunHistoryList)); using (var stream = new FileStream("jobs.small", FileMode.Create)) { sh.Serialize(stream, history); } }
public static TaskListWindowViewModel From(SmallerTaskList tasks, RunHistoryList history) { var jobs = tasks.Tasks .GroupJoin(history, o => o.Identifier, i => i.Identifier, (o, i) => new {Task = o, History = i}) .SelectMany(io => io.History.DefaultIfEmpty(), (o,i) => new {Task = o.Task, History=i}) .Select(p => new Job { Id = p.Task.Identifier, Type = p.Task.GetType().Name, RunDate = p.History == null ? null : (DateTime?)p.History.RunDate, ScheduledDate = p.Task.ScheduledDate, Result = Null(p.History).Result }) .OrderBy(p => p.ScheduledDate); return new TaskListWindowViewModel { Things = jobs.ToArray() }; }
private void SampleHistory() { var tasks = new RunHistoryList() { new RunHistory { Identifier = "Foo", Result = "Success", RunDate = DateTime.Now }, new RunHistory { Identifier = "Foo", Result = "Success", RunDate = DateTime.Now } }; var s = new System.Xml.Serialization.XmlSerializer(typeof(RunHistoryList), new[] { typeof(RunHistory) }); var m = new MemoryStream(); s.Serialize(m, tasks); System.IO.File.WriteAllBytes("SampleHistory.xml", m.ToArray()); }