public ActionResult Add(ContactModel model) { Account account = GetAccount(); Contact contact = contactRepository.GetContact(model.MobileNumber, account.AccountId); if (ModelState.IsValid) { if (contact == null) // Can't add contacts twice { if (model.MobileNumber != account.MobileNumber) // Can't add yourself { contactLogic.CreateContact(model.MobileNumber, model.ContactName, account.AccountId); return(RedirectToAction("Index")); } else { ModelState.AddModelError("", "You can't add yourself as a contact"); } } else { ModelState.AddModelError("", "You can't add the same number twice"); } } else { ModelState.AddModelError("", "Your input is invalid"); } return(View(model)); // Show view again including model error }