private void Consulta_Load(object sender, EventArgs e) { DataGridView dgv = new DataGridView(); DataTable dt = new DataTable("Dados"); dt.Columns.Add("Nome Completo"); dt.Columns.Add("CPF"); dt.Columns.Add("Data Nascimento"); dt.Columns.Add("Endereço Completo"); dgv.DataSource = dt; dataGridView1.DataSource = dt; Controller.Json json = new Controller.Json(); List <Object> data = json.JsonDecode(Controller.Json.filename); List <JArray> data_JARRAY = new List <JArray>(); List <Endereco> enderecos = new List <Endereco>(); List <Data> datas = new List <Data>(); for (int cont = 0; cont < data.Count; cont++) { data_JARRAY.Add((JArray)data[cont]); String string_json = data_JARRAY[cont][0].ToString(); JObject json_inteiro = JObject.Parse(data_JARRAY[cont][0].ToString()); JToken dataToken = json_inteiro.GetValue("data"); Data data1 = dataToken.ToObject <Data>(); datas.Add(data1); string_json = data_JARRAY[cont][1].ToString(); json_inteiro = JObject.Parse(data_JARRAY[cont][1].ToString()); dataToken = json_inteiro.GetValue("endereco"); Endereco endereco = dataToken.ToObject <Endereco>(); enderecos.Add(endereco); dt.Rows.Add(); dt.Rows[cont][0] = datas[cont].nome + " " + data1.sobrenome; dt.Rows[cont][1] = datas[cont].cpf; dt.Rows[cont][2] = datas[cont].data_nascimento.ToShortDateString(); dt.Rows[cont][3] = enderecos[cont].endereco + "," + enderecos[cont].numero + "-" + " " + enderecos[cont].complemento + " " + enderecos[cont].cidade + "/" + enderecos[cont].estado + " - CEP:" + enderecos[cont].cep; dataGridView1.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells); } }
private void btnCadastrar_Click(object sender, EventArgs e) { Data data = new Data(); Endereco endereco = new Endereco(); if (txtBoxCPF.Text == "") { MessageBox.Show("Preencha um valor numérico para o CPF"); return; } if (Controller.CPF._Validate(txtBoxCPF.Text) == false) { MessageBox.Show("CPF Inválido"); return; } if (txtNome.Text == "") { MessageBox.Show("Digite um nome!"); return; } if (txtSobrenome.Text == "") { MessageBox.Show("Digite um sobrenome!"); return; } if (txtDataNascimento.Text == "") { MessageBox.Show("Digite uma data de nascimento!"); return; } try { DateTime dataNascimento = DateTime.Parse(txtDataNascimento.Text); } catch (Exception erro) { MessageBox.Show("Digite uma data de nascimento válida"); return; } if (txtCEP.Text == "") { MessageBox.Show("Digite um CEP!"); return; } if (txtEndereco.Text == "") { MessageBox.Show("Digite um endereço!"); return; } if (txtNumero.Text == "") { MessageBox.Show("Digite um número para o endereço acima"); return; } try { int.Parse(txtNumero.Text); } catch { MessageBox.Show("Digite um número válido"); return; } if (txtComplemento.Text == "") { MessageBox.Show("Caso não haja complemento, preencha com um N/D ou Nenhum"); return; } if (txtCidade.Text == "") { MessageBox.Show("Digite o nome da cidade!"); return; } if (txtEstado.Text == "") { MessageBox.Show("Digite a UF (Estado)"); return; } data.cpf = txtBoxCPF.Text; data.data_nascimento = DateTime.Parse(txtDataNascimento.Text); data.nome = txtNome.Text; data.sobrenome = txtSobrenome.Text; var dados = new { data = new { cpf = data.cpf, data_nascimento = data.data_nascimento, nome = data.nome, sobrenome = data.sobrenome } }; endereco.cep = txtCEP.Text; endereco.endereco = txtEndereco.Text; endereco.numero = int.Parse(txtNumero.Text); endereco.complemento = txtComplemento.Text; endereco.cidade = txtCidade.Text; endereco.estado = txtEstado.Text; var address = new { endereco = new { cep = endereco.cep, endereco = endereco.endereco, numero = endereco.numero, complemento = endereco.complemento, cidade = endereco.cidade, estado = endereco.estado, } }; List <Object> lista = new List <object>(); lista.Add(dados); lista.Add(address); Controller.Json json = new Controller.Json(); if (json.JsonEncode(lista) != null) { MessageBox.Show("Cadastro efetuado com sucesso!", "Cadastro bem sucedido", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show("Não foi possível efetuar o cadastro!", "Cadastro bem sucedido", MessageBoxButtons.OK, MessageBoxIcon.Error); } }