Tengo una aplicación cliente-servidor, en la que el servidor es esencialmente una aplicación web ASP .NET y los clientes distribuidos están aplicaciones de escritorio.El cliente (aplicación de escritorio) extrae datos ... pero quiero que el servidor (aplicación web) envíe datos
Los clientes necesitan recibir algunos datos del servidor, cuando hay nuevos datos para el cliente. En este momento, la forma en que se hace esto es que el cliente sigue consultando un servicio web cada x minutos (digamos 2 minutos) y sigue comprobando si hay nuevos datos para el cliente.
Idealmente, la forma en que debería funcionar es que la aplicación de escritorio debería recibir actualizaciones cuando estén disponibles, no es necesario extraerlas del servidor; en su lugar, el servidor debería poder presionar al cliente.
¿Cómo puedo hacer esto? Dada la arquitectura de la solución, una aplicación web necesita enviar datos a aplicaciones de escritorio (clientes) en la misma red (una LAN)?
Solo quería dejar una nota que puede usar IHttpAsyncHandler (http://msdn.microsoft.com/en-us/magazine/cc164128.aspx) y System.Threading.Monitor para crear fácilmente un (tipo de) evento impulsado "server push" en .NET 2.0 Si alguien sabe de una clase de utilidad completa para esto, publique algunos enlaces – Radu094
Para cada cliente, el servidor tiene que mantener activa una conexión de socket. Entonces no funcionará cuando el no. de clientes no puede predecirse de antemano. –