skip to Main Content
(31) 98739-9637

Consulta Cep asp.net c#

Conteúdo retirado toda na integra do endereço
http://www.andrealveslima.com.br/blog/index.php/2017/09/13/como-consultar-cep-no-net/

Adicionando a referência ao web service dos Correios

A primeira coisa que temos que fazer para consultarmos CEPs com os web services dos Correios é adicionarmos a referência para o web service. Isso é super tranquilo de ser feito. No Visual Studio, clicamos com o botão direito em “References” e escolhemos a opção “Add Service Reference“:

Na janela que se abre, temos que informar a URL do serviço, clicar em “Go“, dar um nome para o serviço (no caso eu escolhi o nome “WSCorreios“) e clicar em “OK” para gerar as classes de acesso. A URL do web service que implementa a consulta de CEPs dos Correios é a seguinte:

https://apps.correios.com.br/SigepMasterJPA/AtendeClienteService/AtendeCliente?wsdl

Consultando CEPs

Para demonstrar a consulta de CEPs, desenhei uma tela bem simples com os campos relacionados ao endereço:

A chamada para o web service é muito tranquila a partir do Visual Studio. Nós só temos que instanciar o serviço (o qual nós adicionamos a referência no passo anterior) e chamar o método desejado (nesse caso, “consultaCEP“). O método de consulta de CEPs só recebe um parâmetro, que é o próprio CEP no formato em string. O retorno do método será uma instância da classe de endereço dos Correios, que conterá todas as informações do endereço consultado (bairro, cidade, etc).

Veja como é que fica o código do clique do botão:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
// C#
private void btBuscar_Click(object sender, EventArgs e)
{
    using (var ws = new WSCorreios.AtendeClienteClient())
    {
         var resultado = ws.consultaCEP(tbCEP.Text);
         tbEndereco.Text = resultado.end;
         tbComplemento.Text = resultado.complemento;
         tbComplemento2.Text = resultado.complemento2;
         tbCidade.Text = resultado.cidade;
         tbBairro.Text = resultado.bairro;
         tbEstado.Text = resultado.uf;
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
' VB.NET
Private Sub BtBuscar_Click(sender As Object, e As EventArgs) Handles BtBuscar.Click
    Using WS = New WSCorreios.AtendeClienteClient()
        Dim Resultado = WS.consultaCEP(TbCEP.Text)
        TbEndereco.Text = Resultado.[end]
        TbComplemento.Text = Resultado.complemento
        TbComplemento2.Text = Resultado.complemento2
        TbCidade.Text = Resultado.cidade
        TbBairro.Text = Resultado.bairro
        TbEstado.Text = Resultado.uf
    End Using
End Sub

Tratando possíveis erros

Se tentarmos passar algum conteúdo inválido para o web service, ele não retornará um erro, mas sim, lançará uma exceção. Dessa forma, para tratarmos os erros retornados pelos serviços dos Correios, temos que colocar o nosso código em um bloco “try/catch“:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// C#
private void btBuscar_Click(object sender, EventArgs e)
{
    using (var ws = new WSCorreios.AtendeClienteClient())
    {
        try
        {
            var resultado = ws.consultaCEP(tbCEP.Text);
            tbEndereco.Text = resultado.end;
            tbComplemento.Text = resultado.complemento;
            tbComplemento2.Text = resultado.complemento2;
            tbCidade.Text = resultado.cidade;
            tbBairro.Text = resultado.bairro;
            tbEstado.Text = resultado.uf;
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
    }
}
Fonte: http://www.andrealveslima.com.br/blog/index.php/2017/09/13/como-consultar-cep-no-net/

Deixe uma resposta

Back To Top
Abrir WhatsApp
Posso te ajudar?
Olá, posso te ajudar?