/// <summary> /// Valida el DNI de la persona. /// </summary> /// <param name="nacionalidad">La nacionalidad de la persona.</param> /// <param name="dato">El DNI a validar.</param> /// <returns>Retorna el DNI validado. Caso contrario, lanza una excepcion.</returns> private static int ValidarDni(ENacionalidad nacionalidad, string dato) { try { int datoParseado = int.Parse(dato); return(Persona.ValidarDni(nacionalidad, datoParseado)); } catch (FormatException) { throw new DniInvalidoException("El DNI contiene caracteres no validos."); } }
/// <summary> /// Valida que el DNI recibido como string cumpla el formato de DNI /// (Que sea numerico y que el largo sea valido), si corresponde, /// se pasa a validar la nacionalidad, caso contrario se lanza una excepcion /// Dni Invalido /// </summary> /// <param name="nacionalidad"></param> /// <param name="dato"></param> /// <returns>Devuelve el DNI como int ya validado</returns> private static int ValidarDni(ENacionalidad nacionalidad, string dato) { int aux; if (int.TryParse(dato, out aux) && dato.Length >= 1 && dato.Length <= 8) { aux = Persona.ValidarDni(nacionalidad, aux); } else { throw new DniInvalidoException(); } return(aux); }
/// <summary> /// Valida si el dni son numero y no tiene caracteres ajenos. /// Arrojara una excepcion si este no es valido "DniInvalidoException".Y retornara dicho dni. /// </summary> /// <param name="nacionalidad"></param> /// <param name="dato"></param> /// <returns></returns> private static int ValidarDni(ENacionalidad nacionalidad, string dato) { int rDni = -1; for (int i = 0; i < dato.Length; i++) { if (!char.IsDigit(dato[i])) { throw new DniInvalidoException(); } } rDni = Persona.ValidarDni(nacionalidad, int.Parse(dato)); return(rDni); }
/// <summary> /// Validará que el DNI sea solo numérico y tenga la longitud correcta /// </summary> /// <param name="dato">DNI string a validar</param> /// <returns>Retorna DNI validado si está todo OK, de lo contrario lanza una excepción</returns> private static int ValidarDni(ENacionalidad nacionalidad, string dato) { int numeroDni; dato = dato.Replace(".", ""); dato = dato.Replace("-", ""); dato = dato.Replace(",", ""); dato = dato.Replace(" ", ""); if ((dato.Length < 1 || dato.Length > 8) || !(int.TryParse(dato, out numeroDni))) { throw new DniInvalidoException(dato.ToString()); } return(Persona.ValidarDni(nacionalidad, numeroDni)); }
/// <summary> /// Valida que un DNI ingresado en formato string, tenga la cantidad de caracteres correctos e intenga convertirlo a entero. Si lo logra llama a ValidarDni para /// un número entero. Caso contrario lanza excepción. /// </summary> /// <param name="nacionalidad">Nacionalidad</param> /// <param name="dato">Dni</param> /// <returns></returns> private static int ValidarDni(ENacionalidad nacionalidad, string dato) { //Un dni debe tener entre 1 y 8 caracteres. if (dato.Length < 1 || dato.Length > 8) { throw new DniInvalidoException("El Dni debe tener entre 1 y 8 caracteres, usted ingresó: " + dato); } int aux = 0; //Si la conversión no tiene éxito, se lanza una excepción. if (!int.TryParse(dato, out aux)) { throw new DniInvalidoException(); } return(Persona.ValidarDni(nacionalidad, aux)); }
/// <summary> /// Verifica que la cadena recibida como parámetro cumpla los requisitos de un DNI. /// </summary> /// <param name="nacionalidad"></param> /// <param name="dato"> El DNI </param> /// <returns> /// Si es válido, el DNI en formato entero. /// Si no: lanza una excepción. /// </returns> static int ValidarDni(ENacionalidad nacionalidad, string dato) { dato = dato.Replace(".", ""); if (dato.Length < 1 || dato.Length > 8) { throw new DniInvalidoException(); } int numeroDni; if (!Int32.TryParse(dato, out numeroDni)) { throw new DniInvalidoException(); } return(Persona.ValidarDni(nacionalidad, numeroDni)); }
/// <summary> /// Valida que el string dato sea un dato válido para pasárselo luego a ValidarDni /// </summary> /// <param name="nacionalidad"></param> /// <param name="dato"></param> /// <returns> Un entero </returns> private static int ValidarDni(ENacionalidad nacionalidad, string dato) { int dni = 0; if (dato.Length >= 1 && dato.Length <= 8) { try { dni = int.Parse(dato); } catch (Exception e) { throw new DniInvalidoException(e); } } return(Persona.ValidarDni(nacionalidad, dni)); }
/// <summary> /// validará que el dni sea numerico y luego llamara a la validacion numerica /// </summary> /// <param name="dato">string del dni a validad</param> /// <returns>retorna el dni numerico validado o 0 en case de error</returns> private static int ValidarDni(ENacionalidad nacionalidad, string dato) { int dni = 0; try { dni = int.Parse(dato); } catch (OverflowException e) { throw new DniInvalidoException("dni muy alto", e); } catch (FormatException e) { throw new DniInvalidoException("Error de formato", e); } return(Persona.ValidarDni(nacionalidad, dni)); }
/// <summary> /// Se validara que el DNI este conformado solo por numeros para llamar a la validacion numérica /// </summary> /// <param name="dato">DNI string a validar</param> /// <returns>Retorna el resultado de la validacion Numerica si el dato es valido, /// caso contrario se lanzara una excepcion del tipo DniInvalidoException</returns> private static int ValidarDni(ENacionalidad nacionalidad, string dato) { int numeroDni; //valido el largo de la cadna if (dato.Length < 1 || dato.Length > 8) { throw new DniInvalidoException(); } //valido que solo este compuesto de caracteres numericos if (!Int32.TryParse(dato, out numeroDni)) { throw new DniInvalidoException(); } //si esta todo ok lo paso como parametro al validador Numerico return(Persona.ValidarDni(nacionalidad, numeroDni)); }
/// <summary> /// Validara que el string que se le pase sea un numero de DNI valido /// </summary> /// <param name="nacionalidad"></param> /// <param name="dato"></param> /// <returns>Retornara un int parseado y validado correctamente</returns> private static int ValidarDni(ENacionalidad nacionalidad, string dato) { // Compruebo que tenga al menos 1 caracter y no más de 8, dados por el número 99.999.999 if (dato.Length < 1 || dato.Length > 8) { throw new DniInvalidoException(dato); } int numeroDni; try { numeroDni = Int32.Parse(dato); } catch (Exception e) { throw new DniInvalidoException(dato, e); } return(Persona.ValidarDni(nacionalidad, numeroDni)); }
/// <summary> /// Valida que el dni ingresado sea un numero valido /// </summary> /// <param name="nacionalidad">nacionalidad</param> /// <param name="dato">dni</param> /// <returns>le pasa a ValidarDni el dni validado</returns> private static int ValidarDni(ENacionalidad nacionalidad, string dato) { dato = dato.Replace(".", ""); if (dato.Length < 1 || dato.Length > 8) { throw new DniInvalidoException(dato.ToString()); } int numeroDni; try { numeroDni = Int32.Parse(dato); } catch (SystemException e) { throw new DniInvalidoException(dato.ToString(), e); } return(Persona.ValidarDni(nacionalidad, numeroDni)); }
/// <summary> /// Valida el DNI en base a la nacionalidad. /// </summary> /// <param name="nacionalidad"></param> /// <param name="dato"></param> /// <returns></returns> private static int ValidarDni(ENacionalidad nacionalidad, string dato) { dato = dato.Replace(".", ""); if (dato.Length < 1 || dato.Length > 8) { throw new DniInvalidoException(); } int auxDni; try { auxDni = Int32.Parse(dato); } catch (Exception e) { throw new DniInvalidoException(e); } return(Persona.ValidarDni(nacionalidad, auxDni)); }
/// <summary> /// /// </summary> /// <param name="nacionalidad"></param> /// <param name="dato"></param> /// <returns></returns> /// private static int ValidarDni(ENacionalidad nacionalidad, string dato) { //Quito los . que pueda tener el dni dato = dato.Replace(".", ""); // Compruebo que el dni tenga por lo menos un 1 numero y no más de 8. if (dato.Length < 1 || dato.Length > 8) { throw new DniInvalidoException(dato.ToString()); } int numeroRetorno; try { numeroRetorno = int.Parse(dato); } catch (Exception e) { throw new DniInvalidoException(dato.ToString(), e); } return(Persona.ValidarDni(nacionalidad, numeroRetorno)); }