protected void Act(Guid id, Action <T> updateAction) { var agg = repository.Get <T>(id); updateAction(agg); var events = agg.GetUncommittedEvents().ToList(); repository.Save(agg); try { eventDispatcher.DispatchEvents(events); } catch (Exception ex) { logger.LogError(ex, $"Update of read model for aggregate with id={agg.Id} failed!"); } }