MongoDB c#使用新驱动程序
本文关键字:驱动程序 MongoDB | 更新日期: 2023-09-27 18:13:25
我知道你们可能觉得我是个十足的呆子,但我确实是。我试图在c#中使用mongodb驱动程序。试着做一些事情,比如添加一条记录。
我今天学习了所有基本的mongodb查询,甚至尝试了robomongo。
但是我不明白如何在c#中使用它?如何从主函数调用它??
这是我写的代码(试图使用mongodb网站教程):
等待的是什么?什么是任务?它是什么意思,如何使它起作用?
非常感谢你的帮助。
class Program
{
protected static IMongoClient _client;
protected static IMongoDatabase _database;
public static void Main()
{
_client = new MongoClient();
_database = _client.GetDatabase("test");
Task simpleTask = Tasky();
}
public async Task Tasky()
{
var document = new BsonDocument
{
{ "address" , new BsonDocument
{
{ "street", "2 Avenue" },
{ "zipcode", "10075" },
{ "building", "1480" },
{ "coord", new BsonArray { 73.9557413, 40.7720266 } }
}
},
{ "borough", "Manhattan" },
{ "cuisine", "Italian" },
{ "grades", new BsonArray
{
new BsonDocument
{
{ "date", new DateTime(2014, 10, 1, 0, 0, 0, DateTimeKind.Utc) },
{ "grade", "A" },
{ "score", 11 }
},
new BsonDocument
{
{ "date", new DateTime(2014, 1, 6, 0, 0, 0, DateTimeKind.Utc) },
{ "grade", "B" },
{ "score", 17 }
}
}
},
{ "name", "Vella" },
{ "restaurant_id", "41704620" }
};
var collection = _database.GetCollection<BsonDocument>("restaurants");
await collection.InsertOneAsync(document);
}
}
试着理解更简单的版本,然后阅读async/await
。使用mongo
shell将一些文档添加到集合中,并尝试如下操作:
var collection = new MongoClient("mongodb://localhost").GetServer()
.GetDatabase("your_db").GetCollection<BsonDocument>("your_collection");
var cursor = collection.FindAll();
foreach(var doc in cursor) {
Console.WriteLine(doc);
}
cursor
用于逐一获取文档