Beispiel #1
0
        public async Task <IActionResult> Edit(int id, [Bind("SubTypeID,SubTypeName,Extension,TypeID")] RentSubType rentSubType)
        {
            if (id != rentSubType.SubTypeID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(rentSubType);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!RentSubTypeExists(rentSubType.SubTypeID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["TypeID"] = new SelectList(_context.RentTypes, "TypeID", "TypeName", rentSubType.TypeID);
            return(View(rentSubType));
        }
Beispiel #2
0
        public async Task <IActionResult> Create([Bind("SubTypeID,SubTypeName,File,TypeID")] RentSubType rentSubType)
        {
            using (var memoryStream = new MemoryStream())
            {
                await rentSubType.File.FormFile.CopyToAsync(memoryStream);

                string photoname = rentSubType.File.FormFile.FileName;
                rentSubType.Extension = Path.GetExtension(photoname);
                if (!".jpg.jpeg.png.gif.bmp".Contains(rentSubType.Extension.ToLower()))
                {
                    ModelState.AddModelError("File.FormFile", "Invalid Format of Image Given.");
                }
                else
                {
                    ModelState.Remove("Extension");
                }
            }
            if (ModelState.IsValid)
            {
                _context.Add(rentSubType);
                await _context.SaveChangesAsync();

                var uploadsRootFolder = Path.Combine(_environment.WebRootPath, "images/subtypes");
                if (!Directory.Exists(uploadsRootFolder))
                {
                    Directory.CreateDirectory(uploadsRootFolder);
                }
                string filename = rentSubType.SubTypeID + rentSubType.Extension;
                var    filePath = Path.Combine(uploadsRootFolder, filename);
                using (var fileStream = new FileStream(filePath, FileMode.Create))
                {
                    await rentSubType.File.FormFile.CopyToAsync(fileStream).ConfigureAwait(false);
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["TypeID"] = new SelectList(_context.RentTypes, "TypeID", "TypeName", rentSubType.TypeID);
            return(View(rentSubType));
        }