private Vykaz Modify(EventVykazUpdated evt, Vykaz item) { item.EventGuid = evt.EventId; item.Value1 = evt.VykazValue1; item.Value2 = evt.VykazValue2; return(item); }
public async Task Update(CommandVykazUpdate cmd) { var item = db.Vykazy.FirstOrDefault(u => u.VykazId == cmd.VykazId); if (item != null) { var ev = new EventVykazUpdated() { EventId = Guid.NewGuid(), VykazValue1 = cmd.VykazValue1, VykazValue2 = cmd.VykazValue2, }; ev.Generation = item.Generation + 1; item = Modify(ev, item); await _handler.PublishEvent(ev, MessageType.VykazUpdated, ev.EventId, item.EventGuid, ev.Generation, cmd.VykazId); db.Vykazy.Update(item); await db.SaveChangesAsync(); } }