public ActionResult Create([Bind(Include = "Id,ClientId,Name,Gender,Age, Image")] PatientModel patient, HttpPostedFileBase Image) { try { if (patient.Name == null || patient.Name == string.Empty) { ModelState.AddModelError("Name", "Debe ingresar un nombre"); } if (patient.ClientId == 0) { ModelState.AddModelError("ClientId", "Debe seleccionar un cliente"); } if (patient.Age == 0) { ModelState.AddModelError("Age", "Debe ingresar una edad"); } IEnumerable <Patient> patients = patientBusiness.GetByFilters(PatientModel.FromModel(patient)); if (patients.ToList().Count > 0) { ModelState.AddModelError("Model", "Ya existe un paciente con nombre: " + patient.Name + " y dueño: " + patient.ClientId); } if (ModelState.IsValid) { Patient p = patientBusiness.Insert(PatientModel.FromModel(patient)); //Guardar imagen en carpeta local if (Image != null) { var fileName = Path.GetFileName(Image.FileName); var extension = fileName.Substring(fileName.IndexOf('.')); var newFileName = p.Id + extension; var path = Path.Combine(Server.MapPath("~/Content/Images"), newFileName); Image.SaveAs(path); } return(RedirectToAction("Index")); } var clients = patientBusiness.List(); ViewBag.ClientId = new SelectList(clients, "Id", "Name", patient.ClientId); return(View(patient)); } catch (Exception ex) { Log.Error(ex.Message, ex); return(View()); } }
public ActionResult Edit([Bind(Include = "Id,ClientId,Name,Gender,Age")] PatientModel patient) { try { if (patient.Name == null || patient.Name == string.Empty) { ModelState.AddModelError("Name", "Debe ingresar un nombre"); } if (patient.ClientId == 0) { ModelState.AddModelError("ClientId", "Debe seleccionar un cliente"); } if (patient.Age == 0) { ModelState.AddModelError("Age", "Debe ingresar una edad"); } IEnumerable <Patient> patients = patientBusiness.GetByFilters(PatientModel.FromModel(patient)); if (patients.ToList().Count > 0) { ModelState.AddModelError("Model", "Ya existe un paciente con nombre: " + patient.Name + " y dueño: " + patient.ClientId); } if (ModelState.IsValid) { patientBusiness.Update(PatientModel.FromModel(patient)); return(RedirectToAction("Index")); } var allPatients = patientBusiness.List(); ViewBag.ClientId = new SelectList(PatientModel.ToModelList(allPatients), "Id", "Name", patient.ClientId); return(View(patient)); } catch (Exception ex) { Log.Error(ex.Message, ex); return(View()); } }