Pregunta

Estoy en la fase inicial de diseño de una aplicación que tendrá un backend implementado en C# que proporcionará datos para otras plataformas utilizando servicios web WCF alojados en IIS.Una de las plataformas será el iPhone.

Como es un proyecto personal, quiero usarlo para aprender MongoDB.Ya sé que existen controladores desarrollados por la comunidad para MongoDB y C#, por lo que podría manejar la persistencia en el lado del servidor usando MongoDB.

Sin siquiera conocer los modelos de replicación que ofrece MongoDB, estaba pensando en algún tipo de modelo de sincronización simple para mantener los datos locales si el iPhone no está conectado o tiene una mala conexión.

Aquí está la pregunta:¿Se puede utilizar MongoDB en el iPhone utilizando los controladores MongoDB C?¿Alguien ya ha probado eso?

¿Fue útil?

Solución

La arquitectura típica de iPhone consiste en que su aplicación llame a un servicio web.Incluso si es posible utilizar un controlador MongoDB directamente desde un cliente móvil, no lo recomendaría.Por algunas razones.

Básicamente, estás hablando de una arquitectura cliente-servidor en la que tu aplicación cliente se comunica directamente con el almacén de datos (MongoDB). ¿Qué pasa con la seguridad?Cuando un cliente autenticado habla directamente con el almacén de datos, pueden suceder todo tipo de cosas malas.

Acoplar estrechamente su aplicación cliente directamente a cualquier tecnología de acceso a datos determinada es peligroso porque requeriría reescribir su cliente si por alguna razón necesitara cambiar su solución de acceso a datos.

Es más común hoy en día que las aplicaciones de sus clientes pasen por un nivel de acceso a datos y, cuando se trata de Internet, este nivel a menudo implica un servicio web de algún tipo, a menos que desee profundizar en la escritura del código del servidor.

Piense en escribir una API RESTful que exponga su almacén de datos a su cliente iPhone.He oído cosas buenas sobre rasta abierto (Biblioteca REST de C#)

Editar: más información sobre cómo alojar MongoDB en el iPhone

Lo siento, no entendí que deseas ejecutar MongoDB localmente en iPhone.MongoDB es un servidor.No creo que se pueda integrar como almacén de datos en proceso.Y no es posible ejecutar más de un proceso en el iPhone.

Si está familiarizado con C#, es posible que desee consultar Monotáctil.Le permite ejecutar aplicaciones C# en iPhone.Hay una buena biblioteca para usar. Sql Lite que es compatible con iPhone.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top