Pergunta

Eu gostaria de usar algum tipo de banco de dados NoSQL na minha aplicação web que é escrito em asp.net MVC, mas não consigo encontrar nada útil. Tenho um olhou para MongoDB e CouchDB, mas eu gostaria de ter um melhor api (fortemente tipado cordas não mágicos) para minhas consultas do que eles têm. É qualquer coisa como este existe para .NET?

Foi útil?

Solução

Eu sou o princípio autor atrás do motorista .Net para Mongo. Não existe actualmente um ORM como mapeador para isso ainda. Em vez disso, trabalha em documentos simples que são o equivalente a um dicionário. Não seria difícil de usar a reflexão para iterar sobre os campos em um documento e atribuir-lhes propriedades em um objeto. Eu escrevi uma coisa simples como que para obter resultados LDAP no passado. Você não tem que se preocupar com a injeção de SQL com Mongo como há realmente não é uma linguagem de consulta que é analisado. Todos os motoristas falar com Mongo em sua língua nativa. Há algum potencial se você gerar dinamicamente javascript e enviá-lo para a DB, mas a necessidade de que deve ser maioritariamente rara. Se você tiver quaisquer dúvidas sobre a utilização do motorista se sentir livre para publicá-las ao Grupo Google ou enviar uma mensagem através do GitHub.

Outras dicas

MongoDB não usa cordas mágicas, mas usa consulta documentos para representar consultas. Há também um open source C # motorista disponível. Eu não tenho certeza dos detalhes do driver C #, mas deve ser relativamente fácil de adicionar uma camada de validação em cima dela se ainda não existir. Há projetos semelhantes em cima dos motoristas em Python e Ruby, por exemplo.

Você pode se conectar a arquivos de texto usando ADO.NET e ler / escrever-los usando a sintaxe SQL e comandos emitidos através de ADO.NET. Há um exemplo neste artigo . Seus dados serão armazenados em formato legível em formato de registro delimitado por vírgulas ou guia. Claro que não vai ser rápido com grandes conjuntos de dados. Tenho certeza de que você está tentando ficar longe de ambos os bancos de dados SQL e sintaxe SQL. As soluções de arquivo de texto é queryable por SQL.

Você também pode fazer o mesmo com planilhas do Excel, tratando-os como fontes de dados SQL (mesmo que eles não são) através do acesso ADO.NET.

Não tenho certeza se é o que você está procurando, mas você pode tentar http://www.db4o.com/ Eu nunca usei isso sozinho, mas ele pode ajudá-lo

Esta não existia no momento em que esta pergunta foi feita ... mas agora há Corvo DB , um banco de dados documento escrito em C # por Ayende Rahien .

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