async Task Write(string phase, object e, Exception ex = null) { var s = new XmlSerializer(e.GetType()); var w = new StringWriter(); s.Serialize(w, e); _context.Entries.Create(new LogEntryData { LoggedAt = _clock.Time, UserId = _authenticator.UserId, Text = phase + " " + e, Error = ex?.ToString(), Xml = w.ToString() }); await _context.SaveAsync(); }