domingo, 7 de abril de 2013

.NET: Crear un servicio web básico en C#


Desde su versión 2005, Microsoft ofrece gratuitamente las Express Editions, que son varias ediciones básicas separadas por lenguajes de programación o plataforma enfocadas para novatos y entusiastas. Estas ediciones son iguales al entorno de desarrollo comercial pero sin características avanzadas. Un ejemplo es Visual C# Express Edition.

Las ediciones Express de Visual Studio las podéis encontrar aquí: http://www.microsoft.com/visualstudio/eng/products/visual-studio-express-products

Para crear un servicio web con Visual Studio 2010 (o superior) tendremos que crear un proyecto Web ASP.NET declarando el uso del lenguaje en C#.


A continuación, añadiremos un nuevo elemento al proyecto.



Y en el asistente escogeremos Servicio Web (Visual C#) e indicaremos su nombre: demoWS.asmx.



Esto nos creará la siguiente clase:

    public class demoWS : System.Web.Services.WebService
    {

        [WebMethod]
        public string HelloWorld()
        {
            return "Hello World";
        }
    }

De aquí, podemos deducir que se trata de un servicio web por extender de la clase System.Web.Services.WebService y que el método HelloWorld es un método del servicio por su indicación de WebMethod. En este caso, el servicio expone un único método que no recibe parámetros de entrada y devuelve un string.

En este caso, para probarlo va a ser mucho más sencillo, ya que al pulsar el botón iniciar depuración (F5) nos arranca el servidor y la web del servicio.


En la web podremos tanto ver, como ejecutar los métodos.


Si queremos desplegar el servicio en un sitio web concreto, con la opción publicar lo podremos hacer de manera sencilla.



Una vez sabido esto, solo nos queda decidirnos por Java o .NET para nuestro desarrollo de servicios web.