L'architecture typique de l'iPhone consiste à faire en sorte que votre application appelle un service Web. Même s'il est possible d'utiliser un pilote MongoDB directement à partir d'un client mobile, je ne le recommanderais pas. Pour quelques raisons.
Vous parlez essentiellement de l'architecture du serveur client où votre application cliente parle directement au magasin de données (MongoDB). Qu'en est-il de la sécurité? Lorsqu'un client authentifié parle directement au magasin de données, toutes sortes de mauvaises choses peuvent se produire.
Le couplage étroit de votre application client directement à une technologie d'accès aux données donnée est dangereux en ce sens qu'il vous demanderait de réécrire votre client si, pour une raison quelconque, vous deviez modifier votre solution d'accès aux données. Il est plus courant de nos jours que vos applications client passent par un niveau d'accès aux données et lorsque l'Internet est impliqué, ce niveau implique souvent un service Web à moins que vous ne souhaitiez obtenir un code serveur d'écriture profonde. Pensez à écrire une API RESTful exposant votre magasin de données à votre client iPhone. Je l'ai entendu de bonnes choses au sujet Open Rasta (C# bibliothèque REST)
Edition - En savoir plus sur l'hébergement MongoDB sur l'iPhone
Désolé, je ne comprenais pas que vous souhaitez exécuter MongoDB localement sur iPhone. MongoDB est un serveur. Je ne crois pas qu'il soit intégrable en tant que banque de données in-process. Et il n'est pas possible d'exécuter plus d'un processus sur l'iPhone.
Si vous êtes familier avec C#, vous voudrez peut-être vérifier MonoTouch. Il vous permet d'exécuter des applications C# sur iPhone. Il y a une belle bibliothèque pour utiliser SqlLite qui est pris en charge par l'iPhone.
Peut-être que je n'étais pas clair sur mon message. J'expose les données du serveur via les services Web (WCF). L'application iPhone n'aura pas accès à la base de données du serveur, uniquement aux interfaces publiées du serveur Web. Ce que je veux faire est d'avoir une base de données locale dans l'iPhone pour stocker ces données si la connexion est hors ligne. Je veux utiliser MongoDB sur l'iPhone ... Je sais que MongoDB a des drivers C, mais je ne sais pas si ça peut être utilisé (ou si quelqu'un en a d'ailleurs utilisé) dans l'iPhone –