Ejemplo “Servicios Web”

En http://mono-project.com/Writing_a_WebService se nos indica como implementar un Servicio Web, pero además el código empleado resulta bastante ilustrativo como ejemplo. Supongamos que el archivo NumberService.asmx es aportado inicialmente por un autor debidamente identificado y que públicamente aparece como First.

<%@ WebService Language="C#" Class="MathService.MathService" %>

using System;
using System.Web.Services;

namespace MathService
{
        [WebService (Namespace = "http://tempuri.org/NumberService")]
        public class MathService : WebService
        {
                [WebMethod]
                public int AddNumbers (int number1, int number2)
                {
                        return number1 + number2;
                }
        }
}

First tendrá todos los derechos de autor apropiados por haber hecho su aportación en su momento, por lo que es imprescindible identificar la fecha y hora de cada nueva entrada. Supongamos que, por ejemplo, cinco días mas tarde un nuevo autor identificado como Second aporta un nuevo método a la clase creada por First.

<%@ WebService Language="C#" Class="MathService.MathService" %>

using System;
using System.Web.Services;

namespace MathService
{
        [WebService (Namespace = "http://tempuri.org/NumberService")]
        public class MathService : WebService
        {
                [WebMethod]
                public int AddNumbers (int number1, int number2)
                {
                        return number1 + number2;
                }

                [WebMethod]
                public int SubtractNumbers (int number1, int number2)
                {
                        return number1 - number2;
                }
        }
}

Así que el servicio ha de ser capaz de identificar minuciosamente todos los cambios, de tal forma que no sea necesario una gran empresa para realizar una aportación. En este caso, la base de datos empleada por el servicio debe almacenar, además de los campos identificativos y la fecha de la aportación, la modificación realizada, es decir

[WebMethod]
public int SubtractNumbers (int number1, int number2)
{
        return number1 - number2;
}

así como su posición y la forma en que se integra con las aportaciones anteriores.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: