public async Task <IActionResult> ChangeImageOrder(IEnumerable <int?> myIds) { int order = 0; List <HomeSliderImages> homeSliderImages = new List <HomeSliderImages>(); foreach (int?item in myIds) { if (item == null) { return(Json(data: false)); } HomeSliderImages objProductImage = await _db.HomeSliderImages.FindAsync(item); objProductImage.ImageOrder = order; homeSliderImages.Add(objProductImage); order++; } _db.HomeSliderImages.UpdateRange(homeSliderImages); await _db.SaveChangesAsync(); return(Json(data: true)); }
public async Task <IActionResult> Upload(List <IFormFile> HomeSliderImages, int homeId) { //Create images/homepageslider/large/ Folder string largePath = System.IO.Path.Combine(_host.WebRootPath, "images/homepageslider", "large"); if (!Directory.Exists(largePath)) { Directory.CreateDirectory(largePath); } //Create images/homepageslider/medium Folder string mediumPath = System.IO.Path.Combine(_host.WebRootPath, "images/homepageslider", "medium"); if (!Directory.Exists(mediumPath)) { Directory.CreateDirectory(mediumPath); } // Create images / homepageslider / small Folder string smallPath = System.IO.Path.Combine(_host.WebRootPath, "images/homepageslider", "small"); if (!Directory.Exists(smallPath)) { Directory.CreateDirectory(smallPath); } try { List <HomeSliderImages> homeSliderImages = new List <HomeSliderImages>(); foreach (var item in HomeSliderImages) { var imageName = "_" + System.DateTime.Now.ToString("YYYYMMDDhhmmssms") + Path.GetFileName(item.FileName); var newLargePath = System.IO.Path.Combine(_host.WebRootPath, "images/homepageslider/large"); var finalNewLargePath = Path.Combine(newLargePath, imageName); //path of medium image: var newMediumPath = System.IO.Path.Combine(_host.WebRootPath, "images/homepageslider/medium"); var finalNewMediumPath = System.IO.Path.Combine(newMediumPath, imageName); //path of small image: var newSmallPath = System.IO.Path.Combine(_host.WebRootPath, "images/homepageslider/medium"); var finalNewSmallPath = System.IO.Path.Combine(newSmallPath, imageName); using (var webPFileStream = new FileStream(finalNewLargePath, FileMode.Create)) { using (ImageFactory imageFactory = new ImageFactory(preserveExifData: false)) { imageFactory.Load(item.OpenReadStream()) .Resize(new Size(1300, 0)) .Save(webPFileStream); } } using (var webPFileStream = new FileStream(finalNewMediumPath, FileMode.Create)) { using (ImageFactory imageFactory = new ImageFactory(preserveExifData: false)) { imageFactory.Load(item.OpenReadStream()) .Resize(new Size(800, 0)) .Save(webPFileStream); } } using (var webPFileStream = new FileStream(finalNewMediumPath, FileMode.Create)) { using (ImageFactory imageFactory = new ImageFactory(preserveExifData: false)) { imageFactory.Load(item.OpenReadStream()) .Resize(new Size(600, 0)) .Save(webPFileStream); } } var myimage = new HomeSliderImages(); myimage.HomePageId = homeId; myimage.ImageName = imageName; myimage.ImageOrder = await _db.HomeSliderImages .AsNoTracking() .Where(c => c.HomePageId == homeId).CountAsync(); homeSliderImages.Add(myimage); } await _db.HomeSliderImages.AddRangeAsync(homeSliderImages); await _db.SaveChangesAsync(); return(Json(true)); } catch { return(Json(false)); } }