Pergunta

Estou na fase inicial de concepção de um aplicativo que terá um backend implementado em C # que irá fornecer dados para outras plataformas que utilizam os serviços web WCF hospedado no IIS. Uma das plataformas será a do iPhone.

Uma vez que é um projeto pessoal, eu quero usá-lo para aprender MongoDB. Eu já sei que há motoristas comunitários desenvolvidos para MongoDB e C #, então eu poderia lidar com a persistência no lado do servidor usando MongoDB.

Mesmo sem saber os modelos repetições oferecidos pelo MongoDB, eu estava pensando em algum tipo de modelo de sincronização simples para manter os dados local se o iPhone não está conectado ou tem uma má conexão.

Aqui está a pergunta: Can MongoDB ser usado no iPhone usando os drivers MongoDB C? Alguém já tentou isso?

Foi útil?

Solução

A arquitetura típica iPhone é ter a sua chamada aplicação para um serviço web. Mesmo que seja possível usar um driver MongoDB diretamente de um cliente móvel Eu não recomendo. Por algumas razões.

Você é basicamente falando sobre fazer arquitetura cliente-servidor onde seus clientes fala aplicativo diretamente para o armazenamento de dados (MongoDB.) E a segurança? Quando qualquer autenticado cliente fala diretamente para o armazenamento de dados todos os tipos de coisas ruins podem acontecer.

acoplamento firmemente seu aplicativo cliente diretamente para qualquer tecnologia de acesso de dados é perigoso na medida em que exigiria que você reescrever seu cliente se por algum motivo você precisava mudar a sua solução de acesso a dados.

É mais comum nos dias de hoje para ter seus aplicativos cliente passar por uma camada de acesso a dados e quando a Internet está envolvido neste nível, muitas vezes envolve um serviço web de algum tipo a menos que queira obter o código escrito servidor profunda cotovelos.

Pense sobre a escrita de uma API RESTful expor seu armazenamento de dados para o seu cliente iPhone. Eu já ouvi coisas boas sobre Abrir Rasta (biblioteca C # REST) ??

Editar - Mais sobre hospedagem MongoDB no iPhone

Desculpe eu não entendo que você deseja executar MongoDB localmente no iPhone. MongoDB é um servidor. Eu não acredito que é embutido como um armazenamento de dados-processo no. E não é possível executar mais de um processo no iPhone.

Se você está familiarizado com C # você pode querer verificar para fora MonoTouch . Ele permite que você execute aplicativos C # no iPhone. Há uma biblioteca agradável para usar SqlLite que é apoiado pelo iPhone.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top