C#最成熟的MongoDB驱动程序是什么?

时间:2010-04-29 06:41:44

标签: c# mongodb norm mongodb-.net-driver

所以,有

  • 的mongodb-CSHARP
  • 简单的mongodb
  • NORM

可以使用MongoDB的C#驱动程序。

其中哪一个是最成熟稳定的? 你为什么选择其他两个呢?

他们的生产准备好了吗?

7 个答案:

答案 0 :(得分:21)

自从这个问题得到解答以来,10gen已经发布了official MongoDB C# driver,虽然它在年龄方面并不是最成熟的C#驱动程序,但10gen背后它最终可能是最新的。< / p>

它比mongodb-csharp驱动程序更低级别(目前没有Linq支持),但我们还没有发现这是一个问题。我们最近从一个项目(尚未投入生产)转移到mongodb-csharp的官方驱动程序,原因如下:

  • 正式版中的副本集支持
  • SafeMode允许您指定必须将写入复制到的服务器数量
  • 驱动程序处理连接/断开连接到数据库
  • 我们希望作为官方驱动程序,它将有更多的开发人员支持

答案 1 :(得分:20)

mongodb-csharp驱动程序即将在支持typedcollections方面做出巨大努力,其中包括完整的Linq支持。我想你会发现它很容易上班。

其他两个项目也在前进。如果你想要.NET 4.0支持,simple-mongodb将是你最好的选择。

NoRM有很多提交者都是伟大的编码人员,所以除了它没有官方发布之外没有任何问题。

答案 2 :(得分:8)

我会选择Sam Cordermongodb-csharp。另请查看this文章。

答案 3 :(得分:6)

对于那些好奇的人。在这一点上最好的组合似乎是官方10gen C#驱动程序与流利mongo结合使用Linq支持:

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

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

更新:在官方C#驱动程序的1.4版本中,不再需要流利的mongo了。

答案 4 :(得分:1)

您应该使用此nuget package中的MongoDB.Driver。

您可以查看观看此视频的MongoC#示例的完整教程 https://www.youtube.com/watch?v=6x0-vHHHpv8

答案 5 :(得分:0)

避免使用mongodb-csharp驱动程序的几个原因:

  1. 它不支持“或”逻辑。
  2. 它似乎不支持地理空间查询,至少我们无法使其正常工作。

答案 6 :(得分:0)

官方10gen C#驱动程序的类型化构建器(Update&lt;&gt;,Query&lt;&gt;)存在性能问题。见How to speed up typed builders in 10gen official MongoDB C# driver?