Solo con el ánimo de recordar y para quienes se enten enfrentando a sus propias apps, recuerden, las apps cuando funcionan con datos centralizados son solo un punto de entrada frente al resto del escenario de sus ideas de negocio, aquí un diagrama para recordarles de manera muy general que detrás de sus aplicaciones hay más cosas que considerar.
Para hacerse la vida más fácil y no tener que pensar en toda esa infraestructura que hay detrás, a hoy hay alternativas como Azure Mobile Services, este servicio de Microsoft tiene un límite gratuito y después de tener suficientes usuarios hay que empezar a pagar, pero es una buena manera de empezar, administren la cuota gratuita con inteligencia y preparen pronto sus apps para que puedar dar sostenimiento a los costos que llegan después.Bien, volviendo a nuestro proyecto, lo primero es conocer la documentación del API si es que la hay. Para Congreso Visible hay un sitio dispuesto para ello y al explorarlo podemos darnos cuenta que tenemos a nuestra disposición un API en formato Json.
Si sabemos como consumir un servicio Json en .NET sabremos también que necesitamos el conjunto de clases que soportan el resultado de cada servicio. Lo que debemos hacer es analizar la estructura de la respuesta, en la web nos enseñan un ejemplo y tambien podemos probar directamente una invocación al API
El análisis de algunos de los datos de muestra del API me dieron la siguiente estructura para contener el resultado de las consultas.
Además logré identificar algunas de las entidades, un par de ellas lastimosamente nunca me trajeron datos pero en cuanto los encuentre actualizo este post.
Como podemos ver es una cuestión de entender el Modelo de Dominio que manejan los servicios y que a su vez serán los modelos que usaremos en nuestra app.
Allí es donde aquellos que apenas esten haciendo sus apps deben hacerse la pregunta de si conocen el Modelo de Dominio que van a construir, y para ello habrá que repasar conceptos de Orientación a Objetos y dedicarle un buen rato a entender lo que quieren construir.