public bool UpdatePhysicianPreference(PhysicianPreferenceEdit model)
        {
            using (var ctx = new ApplicationDbContext())
            {
                var entity =
                    ctx
                    .PhysicianPreferences
                    .Single(e => e.PhysicianPreferenceID == model.PhysicianPreferenceId && e.OwnerID == _userId);

                entity.Physician.PhysicianFirstName = model.PhysicianFirstName;
                entity.Physician.PhysicianLastName  = model.PhysicianLastName;
                entity.Physician.Specialty          = model.Specialty;
                entity.Procedure.ProcedureName      = model.ProcedureName;
                entity.Procedure.ProcedureNote      = model.ProcedureNote;
                entity.Procedure.ProcedureRoute     = model.ProcedureRoute;
                entity.Medication.MedicationName    = model.MedicationName;
                entity.Equipment.EquipmentName      = model.EquipmentName;
                entity.PreferenceNote = model.PreferenceNote;

                return(ctx.SaveChanges() == 1);
            }
        }
        public ActionResult Edit(int id, PhysicianPreferenceEdit model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            if (model.PhysicianPreferenceId != id)
            {
                ModelState.AddModelError("", "Id Mismatch");
                return(View(model));
            }

            var service = CreatePhysicianPreferenceService();

            if (service.UpdatePhysicianPreference(model))
            {
                TempData["SaveResult"] = "Your physician preference entry was updated.";
                return(RedirectToAction("Index"));
            }

            ModelState.AddModelError("", "Your physician preference entry could not be updated.");
            return(View(model));
        }