Какой самый зрелый драйвер MongoDB для C#?

Итак, есть

  • MongoDB-CSharp
  • простой MongoDB
  • Норма

В качестве драйверов C# для MongoDB доступны.

Какой из них является наиболее зрелым и стабильным? Почему вы выбрали один из двух?

Готовы ли они к производству?

7 ответов

Решение

Драйвер mongodb-csharp собирается сделать огромный толчок в отношении поддержки типизированных коллекций, которые будут включать полную поддержку Linq. Я думаю, вы обнаружите, что это легко работать.

Другие 2 проекта также находятся в стадии разработки. Если вам нужна поддержка.NET 4.0, то лучшим вариантом будет простой-mongodb.

У NoRM есть целая куча коммиттеров, которые все являются хорошими программистами, так что никаких проблем с этим нет, за исключением того, что у него нет официального релиза.

С тех пор, как на этот вопрос был дан ответ, 10gen выпустили официальный драйвер MongoDB C#, и, хотя он не самый зрелый драйвер C# по возрасту, с 10gen за ним он может оказаться самым современным.

Это более низкий уровень, чем драйвер mongodb-csharp (на данный момент поддержки Linq нет), но мы не обнаружили в этом проблемы. Мы недавно перешли к официальному драйверу из mongodb-csharp для проекта (который еще не запущен) по следующим причинам:

  • Реплика Set поддержки в официальном выпуске
  • SafeMode позволяет указать, на сколько серверов должна быть реплицирована запись
  • Драйвер обрабатывает подключение / отключение к базе данных
  • Мы надеемся, что в качестве официального драйвера у него будет больше поддержки для разработчиков

Я бы пошел с mongodb-csharp Сэма Кордера. Также ознакомьтесь с этой статьей.

Для всех любопытных там. Лучшая комбинация на данный момент - официальный драйвер 10gen C# в сочетании с fluent-mongo для поддержки Linq:

https://github.com/mongodb/mongo-csharp-driver

https://github.com/craiggwilson/fluent-mongo

Обновление: с выпуском 1.4 официального драйвера C# больше не нужно будет свободно говорить на монго.

Вы должны использовать MongoDB.Driver из этого пакета nuget.

Вы можете просмотреть полные учебные пособия для примера MongoC#, посмотрев это видео https://www.youtube.com/watch?v=6x0-vHHHpv8

Несколько причин избегать драйвера mongodb-csharp:

  1. Он не поддерживает "или" логику.
  2. Кажется, он не поддерживает геопространственные запросы, по крайней мере, мы не смогли заставить его работать.

Существует проблема производительности в типизированных сборщиках (Update<>, Query<>) официального драйвера 10gen C#. См. Как ускорить типизированные сборки в 10gen официальном драйвере MongoDB C#?

Другие вопросы по тегам