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 (inherits002@yahoo.es)

 


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