public Pessoa(string nome, string cpf, string dataDeNascimento, int codigoCidade) { var partesData = dataDeNascimento.Split('-'); var data = new DateTime(Convert.ToInt32(partesData[0]), Convert.ToInt32(partesData[1]), Convert.ToInt32(partesData[2])); if (!CPF.EhValido(cpf)) { throw new Exception("Cpf inválido"); } if (DateTime.Now < data) { throw new Exception("Data de nascimento inválida"); } if (string.IsNullOrEmpty(nome)) { throw new Exception(); } Nome = nome; Cidade = EnumeradorSeguroDeUF.ObtenhaCidadePorId(codigoCidade); CPF = new CPF(cpf); DataDeNascimento = data; }
private Pessoa MapeiePessoa(DbDataReader dr) { var pessoa = new Pessoa(); pessoa.Codigo = dr.GetInt64(0); pessoa.Nome = dr.GetString(1); pessoa.CPF = new CPF(dr.GetString(2)); pessoa.DataDeNascimento = dr.GetDateTime(3); pessoa.Cidade = EnumeradorSeguroDeUF.ObtenhaCidadePorId(dr.GetInt32(4)); return(pessoa); }