Exemple #1
0
        public async Task <IActionResult> AddProduct(ProImgAndModelduct product, Rom rom, Ram ram)
        {
            if (product.NameProduct == null)
            {
                ModelState.AddModelError("NameProduct", "Vui lòng điền trường này");
            }
            string uniqueFileName = await GetUniqueFileName(product, product.ImgFile.FileName);

            //Thêm hình
            var uploads  = Path.Combine(_hostingEnvironment.WebRootPath, "ProductImg");
            var filePath = Path.Combine(uploads, uniqueFileName);

            product.ImgFile.CopyTo(new FileStream(filePath, FileMode.Create));

            Product productNew = new Product();

            productNew.NameProduct    = product.NameProduct;
            productNew.ManufacturerId = product.ManufacturerId;
            productNew.RamId          = product.RamId;
            productNew.RomId          = product.RomId;
            productNew.ImgUrl         = uniqueFileName;
            if (product.Discount != null)
            {
                productNew.DiscountId = product.DiscountId;
            }
            productNew.Note  = product.Note;
            productNew.Price = product.Price;

            _context.Products.Update(productNew);
            await _context.SaveChangesAsync();

            return(RedirectToAction(nameof(ListProduct)));
        }
Exemple #2
0
        //Thêm sản phẩm
        private async Task <string> GetUniqueFileName(ProImgAndModelduct product, string fileName)
        {
            var Manufacturer = await _context.Manufacturers.FirstOrDefaultAsync(m => m.ManufacturerId == product.ManufacturerId);

            var Ram = await _context.Rams.FirstOrDefaultAsync(r => r.RamId == product.RamId);

            var Rom = await _context.Roms.FirstOrDefaultAsync(r => r.RomId == product.RomId);

            return(Manufacturer.ManufacturerName + "_" + product.NameProduct + "_" + Ram.Memory + "_" + Rom.Space + Guid.NewGuid().ToString().Substring(0, 4) + "_" + Path.GetExtension(fileName));
        }