private static void LogCommandState(ICommand c, CommandEventStorageState state, string msg, Exception ex) { ThreadPool.QueueUserWorkItem((o) => { if (ex != null) { msg += "\r\n" + ex.StackTrace; } using (var db = new CommandEventStorageDbContext()) { db.CommandEventStorageHistories.Add(new CommandEventStorageHistory() { CommandEventId = c.CommandId, CreatedDate = DateTime.Now, Id = Guid.NewGuid(), Message = msg, State = (int)state }); db.SaveChanges(); } }); }
private static void LogCommandState(ICommand c, CommandEventStorageState state, string msg, Exception ex) { Task.Run(() => { if (ex != null) { msg += "\r\n" + ex.StackTrace; } using (var db = new CommandEventStorageDbContext()) { db.CommandEventStorageHistories.Add(new CommandEventStorageHistory() { CommandEventId = c.PublishedCommandId.Value, CreatedDate = DateTime.Now, Id = Guid.NewGuid(), Message = msg, State = (int)state }); db.SaveChanges(); } }); }