典型的なiPhoneアーキテクチャは、アプリケーションにWebサービスを呼び出させることです。モバイルクライアントから直接MongoDBドライバーを使用できる場合でも、お勧めしません。いくつかの理由で。
基本的に、クライアントアプリケーションがデータストア(MongoDB)と直接通信するクライアントサーバーアーキテクチャの実行について話します。セキュリティについてはどうでしょうか。認証されたクライアントがデータストアと直接通信すると、あらゆる種類の悪いことが起こる可能性があります。
クライアントアプリケーションを特定のデータアクセステクノロジに直接緊密に結合することは、何らかの理由でデータアクセスソリューションを変更する必要がある場合にクライアントを書き直す必要があるという点で危険です。
最近では、クライアントアプリケーションにデータアクセス層を通過させることが一般的であり、インターネットが関与している場合、サーバーコードを深く記述したい場合を除いて、この層にはある種のWebサービスが含まれることがよくあります。
データストアをiPhoneクライアントに公開するRESTfulAPIを作成することを検討してください。 OpenRasta について良いことを聞いたことがあります (C#RESTライブラリ)
編集-iPhoneでのMongoDBのホスティングの詳細
申し訳ありませんが、iPhoneでMongoDBをローカルで実行したいということを理解していませんでした。 MongoDBはサーバーです。処理中のデータストアとして埋め込むことができるとは思いません。また、iPhoneで複数のプロセスを実行することはできません。
C#に精通している場合は、MonoTouch を確認することをお勧めします。 。 iPhoneでC#アプリケーションを実行できます。 SqlLite を使用するための優れたライブラリがあります これはiPhoneでサポートされています。