// GET: Phone/Create public ActionResult Create() { var vm = new CreatePhoneVM { Phone = new Phone(), Brands = db.Brands.ToList(), PhoneTypes = db.PhoneTypes.ToList() }; return(View(vm)); }
public ActionResult Edit(int id) { var phone = db.Phones.FirstOrDefault(p => p.Id == id); if (phone == null) { return(HttpNotFound()); } var vm = new CreatePhoneVM { Phone = phone, Brands = db.Brands.ToList(), PhoneTypes = db.PhoneTypes.ToList() }; return(View("Create", vm)); }
public ActionResult Save(Phone phone) { var errors = ModelState.Values.SelectMany(v => v.Errors); // check if the form is valid - Sever side validation if (!ModelState.IsValid) { // return same form to user var vm = new CreatePhoneVM { Phone = phone, Brands = db.Brands.ToList(), PhoneTypes = db.PhoneTypes.ToList() }; return(View("Create", vm)); } if (phone.Id == 0) { db.Phones.Add(phone); } else { var phoneInDB = db.Phones.Single(p => p.Id == phone.Id); //TryUpdateModel(phoneInDB); phoneInDB.PhoneName = phone.PhoneName; phoneInDB.DateReleased = phone.DateReleased; phoneInDB.ScreenSize = phone.ScreenSize; phoneInDB.ImageUrl = phone.ImageUrl; phoneInDB.BrandId = phone.BrandId; phoneInDB.PhoneTypeId = phone.PhoneTypeId; } db.SaveChanges(); return(RedirectToAction("Index")); }