public async Task <Einsatz> EditEinsatz(string helferId, string einsatzId, EinsatzEditModel einsatzEdit) { var einsatz = (await _db.Einsaetze.Where(p => p.Id == einsatzId && p.Helfer.Id == helferId) .Include(p => p.Helfer) .SingleOrDefaultAsync()) ?? throw new InvalidOperationException($"Einsatz {einsatzId} for helfer {helferId} not found"); einsatzEdit.ApplyTo(einsatz); await _db.SaveChangesAsync(); return(Projector.EinsatzProjection.Compile().Invoke(einsatz)); }
public static void ApplyTo(this EinsatzEditModel model, Entities.Einsatz entity) { entity.Anmerkungen = model.Anmerkungen; entity.VermitteltAm = model.VermitteltAm.UtcDateTime; entity.Dauer = model.Dauer; }