是否有人能够使用新的 mongodb .net 2.0 客户端连接到 MongoDB?

Is anyone able to connect to MongoDB using the new mongodb .net 2.0 client?

我从 2015 年 4 月 2 日发布的 nuget 安装了 MongoDB.Driver 2.0。我还通过 chocolatey 版本 2.4.7 安装了 MondgoDB。我在VS2013中创建了一个测试应用,如下:

var client = new MongoClient();
var database = client.GetDatabase("foo");
var foo = database.GetCollection<BsonDocument>("bar");

根据我在文档中阅读的内容,这应该足以连接到服务器并创建数据库。当我通过 robomongo 检查 mongodb 时,我没有看到数据库 "foo" 已经创建。

我尝试通过 windows 服务器和命令行(管理员模式)运行 mongodb,但没有结果。我已经禁用了我的防火墙,以防出现问题;依然没有。我不得不说,作为我第一次涉足 MongoDB,我本以为它会奏效。

我错过了什么?

... and create the database

在mongodb中没有这样的操作,当你试图向其中插入数据时创建数据库

What am I missing?

您并没有要求 driver 实际上 任何事情。所有操作都是惰性的。要让 driver 连接并插入文档,从而同时创建数据库和 collection,请执行以下操作:

var foo = database.GetCollection<Customer>("customer");
foo.InsertOneAsync(new Customer { Name = "John Doe" }).Wait();

其中 Customer 是 class,例如

public class Customer { 
  public ObjectId Id { get; set; }
  public string Name { get; set; }
}

当然,您也可以使用 BsonDocuments,但这似乎很麻烦。