public async Task <ActionResult> BulkCartoonInsert(Guid DrawerId, List <IFormFile> CartoonImages) { try { int maxRank = await _context.Cartoon.MaxAsync(x => x.Rank); foreach (IFormFile file in CartoonImages) { maxRank++; var guid = Guid.NewGuid(); string directoryPath = $"{_env.WebRootPath}/Image/{guid}/"; if (!Directory.Exists(directoryPath)) { Directory.CreateDirectory(directoryPath); } using (var stream = new FileStream($"{directoryPath}/{file.FileName}", FileMode.Create)) { await file.CopyToAsync(stream); } string imageSrc = "/Image/" + guid + "/" + file.FileName; var cartoon = new Cartoon() { DrawersId = DrawerId, Id = Guid.NewGuid(), Rank = maxRank }; await _context.Cartoon.AddAsync(cartoon); await _context.SaveChangesAsync(); var cartoonImage = new CartoonImages() { Id = Guid.NewGuid(), CartoonId = cartoon.Id, Rank = 1, ImageSrc = imageSrc }; await _context.CartoonImages.AddAsync(cartoonImage); await _context.SaveChangesAsync(); } } catch (Exception ex) { return(RedirectToAction("BulkCartoonInsert", new { message = ex.Message })); } return(RedirectToAction("BulkCartoonInsert", new { message = "İşlem başarılı" })); }
public async Task <IActionResult> Create([Bind("Id,CartoonId,ImageSrc")] CartoonImages cartoonImages) { if (ModelState.IsValid) { cartoonImages.Id = Guid.NewGuid(); _context.Add(cartoonImages); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["CartoonId"] = new SelectList(_context.Cartoon.OrderByDescending(x => x.Rank), "Id", "Id", cartoonImages.CartoonId); var allFiles = Directory.GetFiles($"{_env.WebRootPath}/Image/", "*.*", SearchOption.AllDirectories).ToList(); for (int i = 0; i < allFiles.Count; i++) { allFiles[i] = allFiles[i].Replace(_env.WebRootPath, ""); } ViewData["allFiles"] = allFiles; return(View(cartoonImages)); }
public async Task <IActionResult> Edit(Guid id, [Bind("Id,CartoonId,ImageSrc")] CartoonImages cartoonImages) { if (id != cartoonImages.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(cartoonImages); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!CartoonImagesExists(cartoonImages.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["CartoonId"] = new SelectList(_context.Cartoon.OrderByDescending(x => x.Rank), "Id", "Id", cartoonImages.CartoonId); var allFiles = Directory.GetFiles($"{_env.WebRootPath}/Image/", "*.*", SearchOption.AllDirectories).ToList(); for (int i = 0; i < allFiles.Count; i++) { allFiles[i] = allFiles[i].Replace(_env.WebRootPath, ""); } ViewData["allFiles"] = allFiles; return(View(cartoonImages)); }