Ejemplo n.º 1
0
        public async Task <ImageResponse> UpdateGameImage(ImageGameRequest request)
        {
            var image = await _context.GameImages.Where(u => u.GameId == request.GameId).FirstOrDefaultAsync();

            if (image == null)
            {
                return(await AddGameImage(request));
            }

            var file         = request.File;
            var uploadResult = await UploadImage(file);

            request.ImageUrl  = uploadResult.Url.ToString();
            request.PublicId  = uploadResult.PublicId;
            request.TimeImage = DateTime.UtcNow;
            if (uploadResult.Error != null)
            {
                return(null);
            }
            await DeleteImage(image.PublicId);

            _mapper.Map(request, image);
            _context.Entry(image).State = EntityState.Modified;
            await _context.SaveChangesAsync();

            return(_mapper.Map <ImageResponse>(image));
        }
Ejemplo n.º 2
0
        public async Task <ActionResult> PostGameImage(int id, [FromForm] ImageGameRequest gameImage)
        {
            gameImage.GameId = id;
            var image = await _imageService.UpdateGameImage(gameImage);

            return(CreatedAtAction("GetGameImage", new { id = gameImage.GameId }, image));
        }
Ejemplo n.º 3
0
        public async Task <ImageResponse> AddGameImage(ImageGameRequest request)
        {
            var file         = request.File;
            var uploadResult = await UploadImage(file);

            request.ImageUrl  = uploadResult.Url.ToString();
            request.PublicId  = uploadResult.PublicId;
            request.TimeImage = DateTime.UtcNow;
            var image = _mapper.Map <GameImage>(request);

            _context.GameImages.Add(image);
            await _context.SaveChangesAsync();

            return(_mapper.Map <ImageResponse>(image));
        }