Пример #1
0
            public async Task <Image> Handle(Command request, CancellationToken cancellationToken)
            {
                var imageUploadResult = _imageAccessor.AddImage(request.File);

                var user = await _context.Users
                           .Include(x => x.Images)
                           .SingleOrDefaultAsync(x => x.UserName == _userAccessor.GetCurrentUsername());

                var image = new Image
                {
                    Url = imageUploadResult.Url,
                    Id  = imageUploadResult.PublicId
                };

                if (!user.Images.Any(x => x.IsMain))
                {
                    image.IsMain = true;
                }

                user.Images.Add(image);

                var success = await _context.SaveChangesAsync() > 0;

                if (success)
                {
                    return(image);
                }

                throw new Exception("Problem saving changes");
            }
Пример #2
0
            public async Task <Photo> Handle(Command command, CancellationToken cancellationToken)
            {
                var imageUploadViewModel = _imageAccessor.AddImage(command.File);
                var appUser = await _databaseContext.Users.SingleOrDefaultAsync(x => x.UserName == _userAccessor.GetCurrentUsername());

                var photo = new Photo
                {
                    Id  = imageUploadViewModel.PublicId,
                    URL = imageUploadViewModel.URL,
                };

                if (!appUser.Photos.Any(x => x.IsMain))
                {
                    photo.IsMain = true;
                }

                appUser.Photos.Add(photo);

                var photoSuccessfullyAdded = await _databaseContext.SaveChangesAsync() > 0;

                if (photoSuccessfullyAdded)
                {
                    return(photo);
                }

                throw new Exception("Problem uploading photo");
            }
Пример #3
0
            public async Task <Image> Handle(Command request, CancellationToken cancellationToken)
            {
                var imageUploadResult = _imageAccesor.AddImage(request.File);

                var product = await _context.Products.SingleOrDefaultAsync(x => x.Id == request.IdProduct);

                if (product == null)
                {
                    throw new RestException(HttpStatusCode.NotFound, new { product = "Product Not Found" });
                }

                var image = new Image
                {
                    Url          = imageUploadResult.Url,
                    IdCloudinary = imageUploadResult.PublicId
                };

                if (!product.Images.Any(x => x.IsMain))
                {
                    image.IsMain = true;
                }

                product.Images.Add(image);

                var success = await _context.SaveChangesAsync() > 0;

                if (success)
                {
                    return(image);
                }

                throw new Exception("Problem saving changes");
            }