public async Task <IActionResult> Create([Bind("Id,Name,Image,Description,Keywords,Tags")] PicGallery picGallery, IFormFile file, IList <IFormFile> files) { if (ModelState.IsValid) { if (file == null || file.Length == 0 && files == null) { picGallery.Image = "1.jpg"; //pgcViewModel.picCollectionGallery. = "2.jpg"; } else { var uploadsRootFolder = Path.Combine(_environment.WebRootPath, "metro/img/PicGallery"); if (!Directory.Exists(uploadsRootFolder)) { Directory.CreateDirectory(uploadsRootFolder); } //جهت جلوگیری از نام تکراری فایل و جایگزینی String guid = Guid.NewGuid().ToString(); picGallery.Image = guid + file.FileName; using (Image img = Image.FromStream(file.OpenReadStream())) { Stream ms = new MemoryStream(img.Resize(470, 480).ToByteArray()); //return new FileStreamResult(ms, "image/jpg"); var filePath = Path.Combine(uploadsRootFolder, guid + file.FileName); using (var fileStream = new FileStream(filePath, FileMode.Create)) { await ms.CopyToAsync(fileStream).ConfigureAwait(false); } } _context.Add(picGallery); //await _context.SaveChangesAsync(); //جهت جلوگیری از نام تکراری فایل و جایگزینی String guid_picgall = Guid.NewGuid().ToString(); foreach (var fil in files) { var piccg = new PicCollectionGallery(); { piccg.Image = guid_picgall + fil.FileName; piccg.PicGalleryId = picGallery.Id; } //using (Image img = Image.FromStream(files.OpenReadStream())) //{ // Stream ms = new MemoryStream(img.Resize(1920, 585).ToByteArray()); //return new FileStreamResult(ms, "image/jpg"); var filePath = Path.Combine(uploadsRootFolder, guid_picgall + fil.FileName); using (var fileStream = new FileStream(filePath, FileMode.Create)) { await fil.CopyToAsync(fileStream).ConfigureAwait(false); } _context.Add(piccg); } } await _context.SaveChangesAsync(); return(RedirectToAction("Index")); } return(View(picGallery)); }
public async Task <IActionResult> Edit(int id, [Bind("Id,Name,Image,Description,Keywords,Tags")] PicGallery picGallery, IFormFile file) { if (id != picGallery.Id) { return(NotFound()); } if (ModelState.IsValid) { try { //جهت برطرف کردن خطای سازنده باز بودن ترک قبل از عملیات پردازش EF7 var original = _context.PicGallery.AsNoTracking().FirstOrDefault(p => p.Id == id); if (file != null) { var uploadsRootFolder = Path.Combine(_environment.WebRootPath, "metro/img/PicGallery"); DirectoryInfo directory = new DirectoryInfo(uploadsRootFolder); //Directory.GetFiles(uploadsRootFolder + originalPerson.Image); //چک میکنیم تا عکس پیش فرض رو پاک نکند if (original.Image != "1.jpg") { foreach (FileInfo fileEF in directory.GetFiles()) { if (fileEF.Name.Equals(original.Image)) { fileEF.Delete(); } } } picGallery.Image = file.FileName; using (Image img = Image.FromStream(file.OpenReadStream())) { Stream ms = new MemoryStream(img.Resize(470, 480).ToByteArray()); //return new FileStreamResult(ms, "image/jpg"); var filePath = Path.Combine(uploadsRootFolder, file.FileName); using (var fileStream = new FileStream(filePath, FileMode.Create)) { await ms.CopyToAsync(fileStream).ConfigureAwait(false); } } } else { picGallery.Image = original.Image; } //var PGC = _context.PicCollectionGallery.Where(p => p.PicGalleryId == id).ToList(); //if (PGC == null) //{ // return NotFound(); //} _context.Update(picGallery); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!PicGalleryExists(picGallery.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction("Index")); } return(View(picGallery)); }
private void MainWindow_ContentRendered(object sender, EventArgs e) { // Update values AllowDrop = true; IsScrollEnabled = Properties.Settings.Default.ScrollEnabled; Pics = new List <string>(); //DataContext = this; MonitorInfo = MonitorSize.GetMonitorSize(); // Load image if possible if (Application.Current.Properties["ArbitraryArgName"] == null) { Unload(); UpdateColor(); } else { Pic(Application.Current.Properties["ArbitraryArgName"].ToString()); if (Properties.Settings.Default.Fullscreen) { Fullscreen_Restore(true); } else { UpdateColor(); } } LoadClickArrow(true); LoadClickArrow(false); Loadx2(); LoadMinus(); // Update WindowStyle if (!Properties.Settings.Default.ShowInterface) { clickArrowLeft.Opacity = clickArrowRight.Opacity = x2.Opacity = minus.Opacity = 0; clickArrowLeft.Visibility = clickArrowRight.Visibility = x2.Visibility = minus.Visibility = Visibility.Visible; } mainColor = (Color)Application.Current.Resources["MainColor"]; if (!Properties.Settings.Default.BgColorWhite) { imgBorder.Background = new SolidColorBrush(Colors.Transparent); } backgroundBorderColor = (Color)Application.Current.Resources["BackgroundColorAlt"]; // Load PicGallery, if needed if (Properties.Settings.Default.PicGallery > 0) { picGallery = new PicGallery { Opacity = 0, Visibility = Visibility.Collapsed }; bg.Children.Add(picGallery); Panel.SetZIndex(picGallery, 999); if (Properties.Settings.Default.PicGallery == 2 && freshStartup) { PicGalleryToggle.ToggleGallery(); } } // Add UserControls :) LoadTooltipStyle(); LoadFileMenu(); LoadImageSettingsMenu(); LoadQuickSettingsMenu(); LoadFunctionsMenu(); LoadAutoScrollSign(); // Update UserControl values quickSettingsMenu.ToggleScroll.IsChecked = IsScrollEnabled; if (FitToWindow) { quickSettingsMenu.SetFit.IsChecked = true; quickSettingsMenu.SetCenter.IsChecked = false; } else { quickSettingsMenu.SetCenter.IsChecked = true; quickSettingsMenu.SetFit.IsChecked = false; } // Initilize Things! RecentFiles.Initialize(); InitializeZoom(); // Add things! AddEvents(); AddTimers(); AddContextMenus(); // Updates settings from older version to newer version if (Properties.Settings.Default.CallUpgrade) { Properties.Settings.Default.Upgrade(); Properties.Settings.Default.CallUpgrade = false; } AjaxLoadingEnd(); }