2010-04-29 3 views
26

Итак, естьЧто представляет собой самый зрелый драйвер MongoDB для C#?

  • MongoDB-CSharp
  • простой MongoDB
  • Norm

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

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

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

+0

Только для записи: Я выбрал Norm как мой по умолчанию, и я очень счастлива с ним до сих пор. –

+0

Я думаю, что NoRM фактически мертв в это время, пока не найдется другой сопровождающий. –

+0

Обновление: теперь есть официальный драйвер MongoDB C#, поддерживаемый командой разработчиков MongoDB: http://www.mongodb.org/display/DOCS/CSharp+Language+Center – Andrey

ответ

19

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

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

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

+5

Я бы также упомянул, что, хотя мы не выпускаем «официально», мы очень стабильны по API, и я чувствую, что драйвер - это качество продукции. –

+0

Просто, чтобы все знали. Я разговаривал с разработчиками mongodb-csharp и там в режиме обслуживания прямо сейчас. Они рекомендуют для любых новых проектов использовать официальный драйвер MongoDB C#. MongoDB действительно добился большого прогресса в работе с драйвером и в пару недель от выпуска версии 1.0. –

+0

был этот толчок сделано? –

8

Я бы выбрал Sam Cordermongodb-csharp. Также вывешивает товар this.

+0

У нас действительно большие проблемы с драйвером Sam Corder в проектах с высоким трафиком , никогда не используйте Самуса в больших проектах. – Kousha

21

Поскольку на этот вопрос был дан ответ 10gen выпустил official MongoDB C# driver, и хотя он не самый зрелый C# драйвер с точки зрения возраста, с 10gen позади него, он может оказаться самым последним.

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

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

пара причин, чтобы избежать водителя mongodb-csharp:

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

FYI: Ни один из этих пунктов не верен сегодня – kelloti

6

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

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

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

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