sábado, septiembre 09, 2006

Aplicación Windows - Web Service Linux


En el Post anterior comenté como crear un Web Service en Linux bajo Mono y XPS. Considero que lo mejor que se puede hacer, por el momento en .NET bajo Linux, son los Web Service, dado que se pueden reducir mucho los costos (porque si queremos ser legales, no sale económico para una empresa tener que colocar un software original de Windows Server junto a todas las cosillas que vende Microsoft para sacarle dinero a sus clientes). Desarrollar otro tipo de aplicaciones de .NET en Linux son engorrosas, por eso que, aunque se puede desarrollar algo interesante bajo Linux, yo sugiero seguir usando Visual Studio por su robusta IDE.
A continuación muestro cómo comunicar una aplicación hecha en Visual Studio con el Web Service hecho anteriormente:

Para establecer comunicación con el Web Services creado en Linux, se debe agregar la referencia del Web Service al programa o aplicación que estamos creando. Para eso basta que se presione el botón encima de “Referencia Web”, que se encuentra en el editor de Proyectos del Visual Studio, y se seleccione “Agregar Referencia Web”. Entones se abrirá la siguiente ventana:




En la parte de URL se colocará la dirección de nuestro servicio Web, es decir, http://(dirección_ip):(nuestro_puerto)/web/(nombre_nuestro_servicio).asmx
En la parte de “Nombre de referencia Web” se coloca el nombre que queremos darle a nuestro servicio, de manera de ser reconocido por nuestra aplicación (programa).
En este caso haré funcionar el Web service que ya creé. El siguiente Window Form me ayudará en esto:



Con el siguiente código asociado:

[STAThread]
static void Main()
{
Application.Run(new Form1());
}

private void btn_sumar_Click(object sender, System.EventArgs e)
{
int a = int.Parse(txt_a.Text);
int b = int.Parse(txt_b.Text);

MiServicio.Sumador nuevo_servicio = new MiServicio.Sumador();

int r = nuevo_servicio.Add(a,b);
lbl_sumador.Text = r.ToString();

}


Fíjense que dentro de mi aplicación llamé MiServicio a mi Web Services, luego se llama al método Add de la Clase Sumador. Recuerden que este método suma dos enteros pasados como parámetros. Cabe destacar que el botón de mi aplicación se llama btn_sumar.
PD: Obviamente aquí no se muestra la otra parte del código creado automáticamente por el Visual Studio.