--------------------------------------------------------------------------------------------- Por: Giancarlo Fim giancarlo.fim@gmail.com Acesse: http://giancarlofim.wordpress.com/ --------------------------------------------------------------------------------------------- Consulta de endereço através do Cep Neste artigo iremos criar uma aplicação onde o usuário entrará com a informação do seu cep e a aplicação retornará os dados de endereço. Exemplo do projeto em funcionamento. Para isso iremos trabalhar com um WebService. Existem diversos WebService de CEP, no entanto estaremos utilizando o seguinte. http://www.bronzebusiness.com.br/webservices/wscep.asmx?op=cep Neste exemplo estaremos fazendo um projeto web, mas você pode fazer com a interface que preferir, seja ela Form, WPF, Silverlight, etc. O artigo será bem objetivo, portanto não estaremos fazendo as tratativas de erros e de validação. Bom, vamos por a mão na massa? Crie um projeto web.
Adicione um WebForm de nome Default.aspx, na sua página adicione um Textbox, um Button, e um Label de forma que fique semelhante com a imagem abaixo. Agora vamos adicionar o WebService. No Solution Explorer, clique com o botão direito do mouse e clique em Add Web Reference..., ao clicar abrirá uma janela como na imagem abaixo.
Como podem observar na imagem, no campo URL coloque o endereço do WebService citado logo no início do artigo. Altere a informação no campo Web reference name para wsbuscaendereco, depois clique em Add Reference. Pronto, adicionamos a referencia do WebService. Agora adicione uma classe com o nome BuscaEndereco. O código ficará como abaixo: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Data; namespace BuscaEndereco /// <summary> /// Classe Endereco onde teremos os Get e Set para acessarmos /// as propriedades de nossa classe endereço. /// </summary> public class EnderecoModelo private string _logradouro; private string _nomelogradouro; private string _bairro; private string _cidade; private string _uf; public string Logradouro
get return _logradouro; set _logradouro = value; public string NomeLogradouro get return _nomelogradouro; set _nomelogradouro = value; public string Bairro get return _bairro; set _bairro = value; public string Cidade get return _cidade; set _cidade = value; public string Uf get return _uf; set _uf = value; /// <summary> /// Classe que contém um método 'carrega_endereco' que recebe como parametro o nº do CEP /// </summary> public class BuscaEndereco public static EnderecoModelo carrega_endereco(string no_cep) //DataSet que recebera a informação do WebService, que vem no formato xml e insere //em nosso DataSet em formato de tabela //Obs.: Para adicionar o DataSet, lembre-se de declarar o 'using System.Data;' DataSet ds; //Istancia onde faz a referencia do WebService. wsbuscaendereco.wscep wscep = new wsbuscaendereco.wscep(); //Executa a busca passando como parâmetro o número do CEP. ds = wscep.cep(no_cep); //Istancia da classe EnderecoModelo EnderecoModelo dados_endereco = new EnderecoModelo(); if (ds.tables[0].rows.count > 0)
//Atribui para as propriedades de nossa classe, as informações //retornadas pelo webservice dados_endereco.logradouro = ds.tables[0].rows[0]["logradouro"].tostring(); dados_endereco.nomelogradouro = ds.tables[0].rows[0]["nome"].tostring(); dados_endereco.bairro = ds.tables[0].rows[0]["bairro"].tostring(); dados_endereco.cidade = ds.tables[0].rows[0]["cidade"].tostring(); dados_endereco.uf = ds.tables[0].rows[0]["uf"].tostring(); //Retorna os dados do objeto dados_endereco. return dados_endereco; Agora vá até a sua página.aspx, de duplo clique no Button. Dentro do método coloque o seguinte código. protected void btnconsultar_click(object sender, EventArgs e) //Istancia de nossa classe EnderecoModelo. EnderecoModelo objendereco = new EnderecoModelo(); //Carrega nosso objeto com as propriedades. objendereco = BuscaEndereco.carrega_endereco(txtCep.Text); //Lembre-se de colocar o using System.Text para utilizar o StringBuilder. //Adicionamos as informações carregadas, para a string. StringBuilder strendereco = new StringBuilder(); strendereco.appendformat("endereço encontrado: 0 1, 2-3 - 4", objendereco.logradouro.tostring(), objendereco.nomelogradouro.tostring(), objendereco.bairro.tostring(), objendereco.cidade.tostring(), objendereco.uf.tostring()); //Adicionamos o strendereco ao Label. lbldadosendereco.text = strendereco.tostring(); Bom, agora é só executar o projeto e colocar um cep válido, para efetuar a consulta. É isso ai! Bons Estudos!