Exemple #1
0
        public async Task <IActionResult> OnPostAsync()
        {
            if (!ModelState.IsValid)
            {
                return(Page());
            }

            _context.Bootses.Add(Boots);
            await _context.SaveChangesAsync();

            if (image != null)
            {
                Boots.Image = Boots.BootsId + Path.GetExtension(image.FileName);
                var path = Path.Combine(_environment.WebRootPath, "images", Boots.Image);
                using (var stream = new FileStream(path, FileMode.Create))
                {
                    await image.CopyToAsync(stream);
                };
                await _context.SaveChangesAsync();
            }

            return(RedirectToPage("./Index"));
        }
Exemple #2
0
        public async Task <IActionResult> OnPostAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Boots = await _context.Bootses.FindAsync(id);

            if (Boots != null)
            {
                _context.Bootses.Remove(Boots);
                await _context.SaveChangesAsync();
            }

            return(RedirectToPage("./Index"));
        }
Exemple #3
0
        public async Task <IActionResult> OnPostAsync()
        {
            if (!ModelState.IsValid)
            {
                return(Page());
            }

            string path = "";
            // предыдущее изображение
            string previousImage = String.IsNullOrEmpty(Boots.Image) ? "" : Boots.Image;

            if (image != null)
            { // новый файл изображения
                Boots.Image = Boots.BootsId + Path.GetExtension(image.FileName);
                // путь для нового файла изображения
                path = Path.Combine(_environment.WebRootPath, "images", Boots.Image);
            }



            _context.Attach(Boots).State = EntityState.Modified;
            try
            {
                await _context.SaveChangesAsync();

                if (image != null)
                {
                    // если было предыдущее изображение
                    if (!String.IsNullOrEmpty(previousImage))
                    {
                        // если файл существует
                        var fileInfo = _environment.WebRootFileProvider.GetFileInfo("/Images/" + previousImage);
                        if (fileInfo.Exists)
                        {
                            var oldPath = Path.Combine(_environment.WebRootPath, "images", previousImage);
                            // удалить предыдущее изображение
                            System.IO.File.Delete(oldPath);
                        }
                    }

                    using (var stream = new FileStream(path, FileMode.Create))
                    {
                        // сохранить новое изображение
                        await image.CopyToAsync(stream);
                    }
                }
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!BootsExists(Boots.BootsId))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }



            //try
            //{
            //    await _context.SaveChangesAsync();
            //}
            //catch (DbUpdateConcurrencyException)
            //{
            //    if (!BootsExists(Boots.BootsId))
            //    {
            //        return NotFound();
            //    }
            //    else
            //    {
            //        throw;
            //    }
            //}

            return(RedirectToPage("./Index"));
        }