Integrando Servicios Web XML en VB 2003
Web Service [Global Weather] / Visual Basic NET

Fecha: 19/Dic/2004 (Diciembre 18 de 2004)
Autor: Luis Fernando Chavarriaga Cano ([email protected])

 


En esta aplicaci�n nos conectaremos a un Servicio Web, para as� integrar nuestra aplicaci�n windows a un servicio que nos da informaci�n geogr�fica de algunos pa�ses y ciudades.

1. Crear el Proyecto
Crearemos un nuevo proyecto de Visual Basic, tipo aplicaci�n para windows. Lo llamaremos weather

2. Agregar la  Referencia Web [Llamar el Servicio Web XML]
Aqu� llamaremos al Servicio Web, el cual est� alojado en Internet. Recordemos que para disponer de la funcionalidad de este Servicio Web, �ste debe estar en Internet, y en el momento de poner a funcionar nuestra aplicaci�n debemos estar conectados.

Hacemos clic en Proyecto > Agregar Referencia Web

En el cuadro de texto ingresamos la siguiente direcci�n en la cual est� alojado el Servicio Web.

http://www.webservicex.net/globalweather.asmx

Recuerden que los servicios web tienen extensi�n .asmx o .wsdl

En el momento de hacer clic en 'Ir', en la parte baja, se cargan los m�todos que posee este Servicio Web.

Posteriormente en la parte derecha en 'Nombre de Referencia Web, ingresamos cualquiera para identificarlo, en nuestro caso ingresamos Global_Weather.

Clic en Aceptar. Como podemos observar en el Explorador de Soluciones autom�ticamente se agrega una carpeta llamada Web References, y si la desplegamos vemos el nombre que le dimos a la referencia web, en este caso Global_Weather.

Ahora podemos comenzar a hacer nuestra aplicaci�n.

Necesitaremos dos TextBox, llamados txtCity y txtCountry. Un Button btnSearch, y otro TextBox txtInfo.

El TextBox txtInfo tiene la propiedad ScrollBars con el valor Vertical, y la propiedad Multiline en True.

El Servicio Web al que estamos haciendo referencia, nos pide dos valores como Ciudad y Pa�s, y nos retorna algunos datos geogr�ficos.

 

C�digo Fuente

'Importamos el espacio de nombres correspondiente.

'weather es el nombre que le colocamos al proyecto

'y Global_Weather el nombre que le dimos a la referencoa que agregamos.

'Aqu� use un alias llamado gw para acceder mas f�cil al NameSpace, aunque es opcional.

Imports gw = weather.Global_Weather

Public Class Form1

    Inherits System.Windows.Forms.Form

    'Variables que utilizaremos para capturar los datos de env�o al Web Service

    Private City As String

    Private Country As String

    'El procedimiento Buscar, recibe dos String, Ciudad y Pais

    Friend Sub Buscar(ByVal Ciudad As String, ByVal Pais As String)

            'Creamos una Instancia a la Clase GlobalWeather que posee el Servicio Web.

        Dim objGW As New gw.GlobalWeather

        'String que almacenar� los resultados

        Dim s As String

        'Con el Objeto que creamos llamado objGW, llamamos al M�todo GetWeather que recibe_

        'la Ciudad (City) y Pa�s (Country) que queremos buscar_

        'y retorna un String

        s = objGW.GetWeather(Ciudad, Pais)

        'Llevamos el resultado a la propiedad Text del txtInfo

        txtinfo.Text = s

    End Sub

    Private Sub btnSearch_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSearch.Click

        'Llamamos al Procedimiento Buscar y la enviamos los par�metros correspondientes_

        'capturando los TextBox

        City = txtcity.Text

        Country = txtcountry.Text

        Buscar(City, Country)

         End Sub

End Class

Los datos arrojados como podr�n ver est�n en formato XML, por lo cual podr�a resultar un poco dif�cil su comprensi�n. Sin embargo se puede llevar a un .XML los datos, y luego mostrarlos en un DataGrid para tener una mejor visualizaci�n.

Sobra recordar que al momento de utilizar o probar la aplicaci�n deben estar conectados a Internet

Espero haya sido de gran ayuda.

Hasta pronto

 


ir al ndice

Fichero con el c�digo de ejemplo: luisf_adobevbnet.zip - 8 KB