Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá
Encontrei este código para capturar o cep direto do site dos correios e achei interessante, alguém consegue o mesmo código em vb.Net ou mesmo a conversão do PHP para Vb.net?
http://m.correios.com.br/movel/buscaCepConfirma.do
Obrigado!
Não encontrei nada Free para .Net os correios cobram para disponibilizar suas bases de dados vejam os preços, abusivos por sinal.
http://www.correios.com.br/precosPrazos/precosPrazosNacionais/dne.cfm
Se alguém converter o código de PHP para vb.Net do link abaixo todos vão poder usar em seus sites sem pagar.
Ele diz que você pode imprimir no formato Json e usar no AJAX, então você pode inserir o AJAX no ASP.
Veja se este exemplo dá certo:
>
Private Sub ChecarCEP()
Try
Dim Ds As New Data.DataSet
Dim pCEP As String
Dim DsPais, DsEstado, DsCidade As Data.DataSet
pCEP = TxtCep.Text.Replace(".", "").Trim()
pCEP = Replace(pCEP, ".", "")
pCEP = Replace(pCEP, "-", "")
pCEP = Replace(pCEP, "/", "")
pCEP = Replace(pCEP, "_", "")
Dim _resultado As String
Ds.ReadXml("http://cep.republicavirtual.com.br/web_cep.php?cep=" + pCEP.Replace("-", "").Trim() + "&formato=xml")
If Not Ds Is Nothing Then
If Ds.Tables(0).Rows.Count > 0 Then
_resultado = Ds.Tables(0).Rows(0)("resultado").ToString()
Select Case _resultado
Case "1"
DsPais = Pais.Consultar(" Pais_Nome = 'Brasil' ", "")
PovoaPaises()
DDLPais.SelectedValue = DsPais.Tables(0).Rows(0)("Pais_Codigo")
PovoaEstados()
DDLEstado.SelectedValue = Ds.Tables(0).Rows(0)("uf").ToString().Trim()
DsCidade = Cidade.Consultar(" A.Cidade_Nome = '" & UCase(Ds.Tables(0).Rows(0)("cidade").ToString().Trim()) & _
"' AND B.Pais_Nome = 'Brasil' ", "", 0)
PovoaCidades()
DDLCidade.SelectedValue = DsCidade.Tables(0).Rows(0)("Cidade_Codigo")
'TxtCidade.Text = UCase(Ds.Tables(0).Rows(0)("cidade").ToString().Trim())
TxtBairro.Text = Ds.Tables(0).Rows(0)("bairro").ToString().Trim()
TxtEndereco.Text = Ds.Tables(0).Rows(0)("tipo_logradouro").ToString().Trim() & " " & Ds.Tables(0).Rows(0)("logradouro").ToString().Trim()
LbResultado.Text = "CEP COMPLETO"
Exit Select
Case "2"
DsPais = Pais.Consultar(" Pais_Nome = 'Brasil' ", "")
PovoaPaises()
DDLPais.SelectedValue = DsPais.Tables(0).Rows(0)("Pais_Codigo")
PovoaEstados()
DDLEstado.SelectedValue = Ds.Tables(0).Rows(0)("uf").ToString().Trim()
DsCidade = Cidade.Consultar(" A.Cidade_Nome = '" & UCase(Ds.Tables(0).Rows(0)("cidade").ToString().Trim()) & _
"' AND B.Pais_Nome = 'Brasil' ", "", 0)
PovoaCidades()
DDLCidade.SelectedValue = DsCidade.Tables(0).Rows(0)("Cidade_Codigo")
'PovoaEstados()
'DDLEstado.SelectedValue = Ds.Tables(0).Rows(0)("uf").ToString().Trim()
'TxtCidade.Text = UCase(Ds.Tables(0).Rows(0)("cidade").ToString().Trim())
TxtBairro.Text = DBNull.Value.ToString
TxtEndereco.Text = DBNull.Value.ToString
LbResultado.Text = "CEP ÚNICO"
Exit Select
Case Else
DsPais = Pais.Consultar(" Pais_Nome = 'Brasil' ", "")
PovoaPaises()
DDLPais.SelectedValue = DsPais.Tables(0).Rows(0)("Pais_Codigo")
PovoaEstados()
DDLEstado.SelectedValue = Ds.Tables(0).Rows(0)("uf").ToString().Trim()
DsCidade = Cidade.Consultar(" A.Cidade_Nome = '" & UCase(Ds.Tables(0).Rows(0)("cidade").ToString().Trim()) & _
"' AND B.Pais_Nome = 'Brasil' ", "", 0)
PovoaCidades()
DDLCidade.SelectedValue = DsCidade.Tables(0).Rows(0)("Cidade_Codigo")
'PovoaEstados()
'TxtCidade.Text = DBNull.Value.ToString
TxtBairro.Text = DBNull.Value.ToString
TxtEndereco.Text = DBNull.Value.ToString
LbResultado.Text = "CEP NÃO ENCONTRADO!!!"
Exit Select
End Select
End If
End If
Catch ex As Exception
LbMensagem.Text = "OCORREU UM ERRO AO TENTAR CONSULTAR O CEP INFORMADO:<br>" & ex.Message
End Try
Espero ter ajudado.
Inté,
Ilano.
Olá
Obrigado pela ajuda.
Porém, este código busca da republica virtual e não diretamente dos correios.
O que eu gostaria seria a conversão do código em PHP para vb.Net abaixo (como no link do primeiro post)
Aqui é VB.NET, você conseguirá alguma resposta TALVEZ, no fórum de PHP...
Olha Rendan, eu tenho quase certeza que os correios disponibilizam esse API em .NET, é só procurar direito.