public async Task <IServiceResult> RemoveAsync(string id) { try { var imageId = id.ToGuid(); var image = await _repository.GetSingleAsync(imageId, true); if (image == null) { throw new NotFoundException(nameof(image), imageId); } _repository.Remove(image); if (!await _unitOfWork.CompleteAsync()) { throw new SaveFailedException(nameof(image)); } ; _logger.LogInformation($"Deleted {nameof(image)} with id: {image.Id}."); return(new ServiceResult()); } catch (Exception e) { _logger.LogError($"Deleting image with id: {id} failed. {e.Message}"); return(new ServiceResult(false, e.Message)); } }