domingo, 30 de diciembre de 2012

Ejemplo de Cliente Web Service


Buenas, este post es la continuación de una entrada anterior aunque tampoco es importante ya que este ejemplo se puede aplicar de forma generar para consumir los servicios de otro web service.

Si queremos asociar nuestro anterior web service deberás instalar IIS desde el panel de control y en Visual Studio 2010 ir a la pantalla principal y en “Generar” hacer clic en “Publicar sitio web”.




Se nos abrirá una nueva ventana donde nos permitirá elegir la ubicación pulsamos sobre examinar.
En esta nueva ventana nos vamos a IIS local y lo asociamos hay.




Importante si al acceder a vuestro web service o aparece el siguiente error  “Hay definida una sección 'system.web.extensions/scripting/scriptResourceHandler' duplicada”.

Es porque tenéis configurado vuestro IIS para que trabaje con el frameword 4.0 tenéis que cambiarlo al 2.0 para ello tendréis que ir al panel del IIS y hacer clic en “Grupo de aplicaciones” y modificar la versión del frameword.





Otro problema que os puede aparecer es que no tengas permisos para acceder a la ruta para ello deberéis ir a IIS y en configuración básico ingresar un usuario que posea permisos de administrador.

 Una vez tengamos configurado nuestro web service que vamos a utilizar lo primero será crear el nuevo proyecto que es mi caso solo constara de un simple formulario que servirá para verificar si una persona es residente o no.




Ahora agregaremos la referencia al servicio web para ello vamos  al “Explorador de soluciones” y “References” agregamos referencia de servicio.





Introducimos la ruta de nuestro web service en mi caso esta.





Después pulsamos sobre “Avanzadas...” y dentro de la nueva ventana en “Agregar referencia Web”.




Y agregamos la referencia.



Así quedaría nuestro código

using ClienteWebService.MyWebService;

namespace ClienteWebService
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            bool existe = false;
            Service webService = new Service();

            existe = webService.EsResidente(txtDNI.Text);

            if (existe)
            {
                pictureBox1.Image = Image.FromFile
                                    (System.Environment.GetFolderPath
                                    (System.Environment.SpecialFolder.Personal)+ @"\OK.png");
            }
            else
            {
                pictureBox1.Image = Image.FromFile
                    (System.Environment.GetFolderPath
                    (System.Environment.SpecialFolder.Personal) + @"\cancel.png");
            }

        }
    }
}


Bueno como veis es bastante simple llamamos la método “EsResidente” de nuestro web service y este nos devuelve si o no. Y caso de que sea correcto dibuja uno o otra imagen en el formulario.











No hay comentarios:

Publicar un comentario