public async Task <ActionResult <PhotoForPersonDto> > SetMainPhotoForPerson(PhotoForPersonDto photo) { var photoToSet = await _repository.SetMainPhotoForPersonAsync(photo); if (photoToSet == null) { return(NotFound()); } await _repository.CommitAsync(); return(photoToSet); }
public async Task <PhotoForPersonDto> SetMainPhotoForPersonAsync(PhotoForPersonDto photo) { var currentMain = await _context.Photos .Where(p => p.IsMain == true && p.PersonId == photo.PersonId) .FirstOrDefaultAsync(); var photoToSet = await _context.Photos .FirstOrDefaultAsync(p => p.PhotoId == photo.PhotoId); if (photoToSet != null) { if (currentMain != null) { currentMain.IsMain = false; } photoToSet.IsMain = true; } return(photoToSet.Adapt <PhotoForPersonDto>()); }