コード例 #1
0
        // for uploading images
        public async Task UploadImages(List <string> imageLinks, Guid guid)
        {
            string altId = guid.ToString().ToUpper();

            System.Net.WebClient wc = new System.Net.WebClient();
            int count = 1;

            foreach (var currentImage in imageLinks.Take(1))
            {
                try
                {
                    if (count <= 3)
                    {
                        var                  trimImageLink = currentImage.Split("?");
                        ImageType            imageType     = ImageType.FeelHotTicketSlider;
                        string               imageAltId    = "";
                        byte[]               bytes         = wc.DownloadData(trimImageLink[0]);
                        MemoryStream         ms            = new MemoryStream(bytes);
                        System.Drawing.Image original      = System.Drawing.Image.FromStream(ms);

                        // Place page & Ticket Catgeory Image
                        if (count == 1)
                        {
                            System.Drawing.Image resizedPlaceImage = ResizeImage(original, new Size(1920, 570));
                            imageAltId = altId.ToString() + "-about";
                            imageType  = ImageType.FeelDescriptionPage;
                            _amazonS3FileProvider.UploadFeelImage(resizedPlaceImage, imageAltId, imageType);

                            System.Drawing.Image resizedInventoryImage = ResizeImage(original, new Size(1920, 350));
                            imageAltId = altId.ToString() + "";
                            imageType  = ImageType.FeelInventoryPage;
                            _amazonS3FileProvider.UploadFeelImage(resizedInventoryImage, imageAltId, imageType);
                        }

                        // Hot Ticket Upload
                        if (count <= 3)
                        {
                            System.Drawing.Image resizedHotTicketImage = ResizeImage(original, new Size(600, 381));
                            imageAltId = altId.ToString() + "-ht-c" + count.ToString() + "";
                            _amazonS3FileProvider.UploadFeelImage(resizedHotTicketImage, imageAltId, imageType);
                            // Gallery Images
                            System.Drawing.Image resizedGalleryImage = ResizeImage(original, new Size(1920, original.Width));
                            imageAltId = altId.ToString() + "-glr-" + count.ToString() + "";
                            imageType  = ImageType.FeelGallery;
                            _amazonS3FileProvider.UploadFeelImage(resizedGalleryImage, imageAltId, imageType);
                            count++;
                        }
                    }
                }
                catch (Exception e)
                {
                    _logger.Log(LogCategory.Error, new Exception("Failed to Upload Tiqet Images", e));
                    continue;
                }
            }
        }
コード例 #2
0
        public async Task <LocationSyncDataResponseModel> UploadImages(int skipIndex, int takeIndex)
        {
            try
            {
                var queryResult = await _querySender.Send(new GetExOzImagesQuery { SkipIndex = skipIndex, TakeIndex = takeIndex });

                System.Net.WebClient wc        = new System.Net.WebClient();
                ImageType            imageType = ImageType.FeelHotTicketSlider;
                foreach (var currentItem in queryResult.ExOzImageUploadModels)
                {
                    int count = 1;
                    foreach (var item in currentItem.ImageLinks)
                    {
                        if (count <= 3)
                        {
                            try
                            {
                                string               imageAltId            = "";
                                byte[]               bytes                 = wc.DownloadData(item);
                                MemoryStream         ms                    = new MemoryStream(bytes);
                                System.Drawing.Image original              = System.Drawing.Image.FromStream(ms);
                                System.Drawing.Image resizedHotTicketImage = ResizeImage(original, new Size(600, 381));
                                imageAltId = currentItem.EventAltIds.ToString() + "-ht-c" + count.ToString() + "";
                                _amazonS3FileProvider.UploadFeelImage(resizedHotTicketImage, imageAltId, imageType);
                                count++;
                            }
                            catch (Exception e)
                            {
                                _logger.Log(LogCategory.Error, new Exception("Failed to Upload Tiqet Images", e));
                                continue;
                            }
                        }
                    }
                }
                return(new LocationSyncDataResponseModel
                {
                    isSuccess = true
                });
            }
            catch (Exception e)
            {
                return(new LocationSyncDataResponseModel {
                    isSuccess = false
                });
            }
        }
コード例 #3
0
        public async Task <bool> UploadImage()
        {
            try
            {
                var session = await _sessionProvider.Get();

                var  files         = Request.Form.Files;
                bool updateSuccess = false;
                long size          = files.Sum(f => f.Length);
                var  filePath      = Path.Combine(_env.WebRootPath.Replace("\\wwwroot", ""), "ClientApp\\Images\\ProfilePictures\\" + session.User.AltId + ".jpg");

                foreach (var formFile in files)
                {
                    if (formFile.Length > 0)
                    {
                        using (var stream = new FileStream(filePath, FileMode.Create))
                        {
                            await formFile.CopyToAsync(stream);
                        }
                        try
                        {
                            _amazonS3FileProvider.UploadFeelImage(filePath, session.User.AltId.ToString());
                            updateSuccess = true;
                        }
                        catch
                        {
                            updateSuccess = false;
                        }
                        if (updateSuccess == true)
                        {
                            await ChangeProfilePicAsync(files[0].FileName);
                        }
                        System.IO.File.Delete(filePath);
                    }
                }
                return(true);
            }
            catch (Exception ex)
            {
                return(false);
            }
        }