Si están pensando en aprender dicha tecnología, no se lo pierdan: Xamarin Diplomado Latinoamerica.
La cuestión con todo esto es que en dicho curso se debe hacer una app conectada a Azure Mobile Services.
La app que hice muestra en pantalla las cotizaciones de las
principales monedas con las que se opera en Uruguay (mi país de origen).
Para ello se fija en la base local (IMobileServiceSyncTable<Cotizaciones>) si no
existen registros para la fecha actual, si no existen: baja de la página del
Banco República Oriental del Uruguay las cotizaciones del día, las guarda en la
base local y luego de ello sincroniza con Azure. La idea es, más adelante,
completar esta app agregando la funcionalidad de que el usuario pueda consultar
por fecha las cotizaciones y además un gráfico con la evolución de las monedas
entre dos fechas.
(No, no vale reírse ... es una app con objetivo didáctico! 😃 )
Al intentar sincronizar la app, en el método PullAsync, tiraba un error 500: "Internal Server Error".
El código del lado del cliente (Xamarin Forms):
Ésta es la clase “Cotizaciones”
definida en el cliente:
El código correspondiente al Push funcionó, ya que si abría la tabla en el SQL Management Studio se mostraban los datos!:
Ésta es la clase “CotizacionesController” definida en el Backend. Noten el decorado de la clase: " [MobileAppController]" ... sin él las cosas no funcionan del todo bien.
Ésta es la clase “Cotizaciones” definida en el Backend:
El motivo de este post, es explicarles (mas allá del error puntual que yo tenia (Tenía desactivado el AutomaticMigrationsEnabled de Entity Framework Code First automatic migrations), cómo hice para solucionar el problema:
Una opción puede ser: En la parte del
servicio en Azure… entré a una parte que se llama “Service Editor” y luego Output. Esta ventana nos muestra un traceo con todos los posibles errores que hayan ocurrido en el servicio:
Otra opción que también me fue de utilidad, es "attachearnos" (adjuntarnos) al backend (lo puedes hacer desde la pestaña Cloud Explorer) y depurar cuando el servicio recibe una llamada. Quedé asombrado de las buenas herramientas que posee Visual Studio (con el SDK de Azure instalado) para realizar cualquier operación en la nube:
Bueno, eso ha sido todo por ahora espero les sea de utilidad... hasta la próxima!
No hay comentarios:
Publicar un comentario