Añadir cabeceras personalizadas a los mensajes de nuestros servicios web es realmente sencillo, en esas cabeceras podemos transportar cualquier dato que nos interese tokens, usuario y contraseña, lo que sea..

Hay que hacer lo siguiente:

1- Crear la clase con los datos que herede de SoapHeader

public class SoapHeaderData: SoapHeader
{
    public string Data1;
    public string Data2;
    public string Data3;
}

2- Crear una propiedad en el servicio web con esa clase y la etiqueta SoapHeader con el nombre de la propiedad al método web, en esa propiedad tendremos los datos

[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class Service : System.Web.Services.WebService
{
    public SoapHeaderData HeaderData;

    [WebMethod]
    [SoapHeader("HeaderData")]
    public string HelloWorld() {
        return "Hello World " + HeaderData.Data1 + ", " +
                                HeaderData.Data2 + ", " +
                                HeaderData.Data3;
    }
}

Solo haciendo esto ya tenemos la cabecera en nuestra petición SOAP:

image

Categories: , , ,

Leave a Reply


*

PUBLICIDAD

EMAIL





posts recientes

Instala la ultima versión...

Posted on ene - 23 - 2012

0 Comment

primer Vistazo al framework...

Posted on ene - 12 - 2012

0 Comment

Changelog de MongoMapper.NET

Posted on ene - 5 - 2012

0 Comment

Sponsors

  • Etooltech
  • Dingus Services
  • Etooltech
  • Dingus Services