martes, 27 de octubre de 2015

Consumiendo WebService ASMX

Aunque ASMX ya es antiguo aún se lo sigue usando.

Este es un pequeño ejemplo de consumo desde un proyecto ASPX en VS2013 Express y uso del Web Service http://www.dneonline.com/calculator.asmx

Se debe dar clic derecho sobre Refences o sobre el proyecto:


Con esto se muestra la siguiente pantalla:
Podemos poner el link del WS en el primer recuadro, sin embargo si vamos a consumir desde un framework 2.0 debemos dar clic en el botón Advanced... que está al final de la imagen, con esto se muestra una nueva ventana.

Y nuevamente clic en el botón Add Web Reference... que se encuentra al final de la ventana.


En esta pantalla ponemos el link del WS. El We reference name se lo puede cambiar (yo lo deje igual) y dar clic en Add Reference.

Prácticamente esto es todo. 

Ahora hacer la referencia y uso:

En el aspx agregue:

    <div>
        <asp:TextBox ID="txt_1" runat="server"></asp:TextBox>
        <asp:TextBox ID="txt_2" runat="server"></asp:TextBox>
        <asp:Button ID="btn_webService" runat="server" Text="Web Service" OnClick="btn_webService_Click" />
        <asp:Label ID="lbl_respuesta" runat="server"></asp:Label>
    </div>

y el el código del botón (es mejor no poner código en el botón!):


        protected void btn_webService_Click(object sender, EventArgs e)
        {
//esta es una instancia de la referencia del WS y Calculator lo puedes encontrar en el WSDL description <wsdl:service name="Calculator"> o si en VS poner ver todos lo archivos vas a ver que bajo la rerefencia esta el .disco y .wsdl
            var cliente = new com.dneonline.www.Calculator();

            this.lbl_respuesta.Text = cliente.Add(Convert.ToInt16(this.txt_1.Text), Convert.ToInt16(this.txt_2.Text)).ToString();

        }




Hice uso del método Add, al que le paso el valor de los textbox y lo muestro en el label.

Diego.


No hay comentarios. :

Publicar un comentario