public ActionResult Edit(int id)
        {
            var contact = _repository.GetById(id);

            var model = new EditContactRequest(contact);
            return View(model);
        }
        public ActionResult Edit(EditContactRequest model)
        {
            var x = model.EditContact(model);
            if (ModelState.IsValid)
            {

                _repository.Edit(x);
                TempData["Message"] = "Contact Edited!";
                return RedirectToAction("Index");
            }
            return View(x);
        }
        public ActionResult Edit(EditContactRequest contactToEdit)
        {
            if (ModelState.IsValid)
            {
                _repository.Edit(contactToEdit.CreateContact());
            TempData["Message"] = "Contact updated!";
            return RedirectToAction("Index");
            }

            return View(contactToEdit);
        }
 public Contact EditContact(EditContactRequest c)
 {
     return new Contact { FirstName = c.FirstName, LastName = c.LastName, Email = c.Email, Phone = c.Phone, Id = c.Id};
 }