public ActionResult Save(Phone phone)
        {
            if (!ModelState.IsValid)
            {
                var viewModel = new PhoneFormViewModel()
                {
                    Phone          = phone,
                    BrandsList     = _context.Brands.ToList(),
                    PhoneTypesList = _context.PhoneTypes.ToList()
                };
                return(View("PhoneForm", viewModel));
            }

            if (phone.ID == 0)
            {
                _context.Phones.Add(phone);
            }
            else
            {
                var phoneInDB = _context.Phones.Single(p => p.ID == phone.ID);
                phoneInDB.PhoneName    = phone.PhoneName;
                phoneInDB.BrandId      = phone.BrandId;
                phoneInDB.PhoneTypeId  = phone.PhoneTypeId;
                phoneInDB.ScreenSize   = phone.ScreenSize;
                phoneInDB.DateReleased = phone.DateReleased;
            }
            _context.SaveChanges();

            return(RedirectToAction("Index", "Phone"));
        }
        //Get: Phone/New
        public ActionResult New()
        {
            var viewModel = new PhoneFormViewModel()
            {
                BrandsList     = _context.Brands.ToList(),
                PhoneTypesList = _context.PhoneTypes.ToList()
            };

            return(View("PhoneForm", viewModel));
        }
        public ActionResult Edit(int phoneId)
        {
            var phoneInDB = _context.Phones.SingleOrDefault(p => p.ID == phoneId);

            if (phoneInDB == null)
            {
                return(HttpNotFound());
            }

            var viewModel = new PhoneFormViewModel()
            {
                Phone          = phoneInDB,
                BrandsList     = _context.Brands.ToList(),
                PhoneTypesList = _context.PhoneTypes.ToList()
            };

            return(View("PhoneForm", viewModel));
        }