Cuando se define un WebReference para consumir Web Services, el Framework, basado en el documento WSDL del Servicio crea una clase con la misma configuración que el servicio web llamado proxy.
Este proxy puede verse en el Solution Explorer de Visual Studio haciendo click sobre el ícono "Show All Files", debajo de Web Reference, Reference.map.
Se podrá ver en esa clase (.vb, o .cs, según el lenguaje que se elija) que se han creado dos métodos adicionales para cada WebMethod que incluya el servicio.
Ej. si el Servicio expone el Método HelloWorld, el proxy contendrá dos métodos web adicionales BeginHelloWorld y EndHelloWorld que se utilizará en llamadas asincrónicas a servicios.
Cuál es el objetivo de esto? Pues el trabajo asincrónico tiene el objetivo de trabajar con acciones en paralelo (threads) para evitar que la ejecución de todas las tareas de la aplicacion se hagan en secuencia una detras de otra.
En este sentido, un thread (implementado a través de delegados) será el que se encargue de esperar la respuesta de un Web Service, mientras el thread principal sigue con la ejecución de otras tareas en la aplicación.
Este enlace es un recurso de cómo implementar llamadas asincrónicas a web services y es muy útil utilizando la técnica de métodos de CallBack.
Pruébenlo!
0 comentarios