public async Task <Event> UpdateEvent(DataForUpdatingEventDto eventDataFromClient) { var eventFromDb = await _context.Events.FindAsync(eventDataFromClient.Id); var eventForUpdate = _mapper.Map <Event>(eventDataFromClient); if (eventDataFromClient.Icon != null) { await _service.DeleteEventIcon(eventFromDb.Id, eventFromDb.Icon); var imageUrl = await _service.UploadEventIcon(eventDataFromClient.Id.ToString(), eventDataFromClient.Icon); eventForUpdate.Icon = !eventFromDb.Icon.Equals(imageUrl) ? imageUrl : eventFromDb.Icon; } else { eventForUpdate.Icon = eventFromDb.Icon; } CopyChanges(eventForUpdate, eventFromDb); await _context.SaveChangesAsync(); return(eventFromDb); }
public async Task <ActionResult <Event> > UpdateEvent([FromForm] DataForUpdatingEventDto eventDataFromClient) { return(Ok(await _repo.UpdateEvent(eventDataFromClient))); }