// Lógica de negocio #region "Residente" public Residente RegistrarResidente(Residente residente) { // Validación de DNI obligatorio if (null == residente.DNI || String.Empty.Equals(residente.DNI)) { throw new Exception("No se puede registrar un Residente sin DNI"); } // Validación de longitud de DNI = 8 if (residente.DNI.Length != 8) { throw new Exception("El DNI debe tener 8 posiciones"); } // Validación de existencia de un residente con el mismo DNI if (ResidenteDAO.Obtener(residente.DNI) != null) { throw new Exception("Ya existe un Residente con el DNI indicado"); } // Validación de existencia de un residente con el mismo Correo if (ResidenteDAO.BuscarCorreo(residente.Correo).Count > 0) { throw new Exception("Ya existe un Residente con el Correo indicado"); } if (null == residente.Tipo || String.Empty.Equals(residente.Tipo)) { throw new Exception("No se puede registrar un residente sin el Tipo"); } // Validación de edad aceptable if (residente.Edad < 18) { throw new Exception("Para poder registrarse debe ser mayor de edad"); } Residente residenteACrear = new Residente(); residenteACrear.DNI = residente.DNI; residenteACrear.Nombres = residente.Nombres; residenteACrear.ApellidoPaterno = residente.ApellidoPaterno; residenteACrear.ApellidoMaterno = residente.ApellidoMaterno; residenteACrear.Edad = residente.Edad; residenteACrear.Correo = residente.Correo; residenteACrear.Clave = residente.Clave; residenteACrear.Tipo = residente.Tipo; return(ResidenteDAO.Crear(residenteACrear)); }