MongoDB c#使用新的驱动程序

MongoDB c#使用新的驱动程序,c#,mongodb,console,C#,Mongodb,Console,我知道你们可能觉得我是个彻头彻尾的无名小卒,但我是。 我正在尝试使用c#中的mongodb驱动程序。尝试添加记录之类的操作 今天我学习了所有基本的mongodb查询,甚至用robomongo进行了尝试 但我不明白如何在c#中使用它? 如何从主函数调用它 这是我编写的代码(尝试使用mongodb网站教程): 我们在等待什么?什么是任务?这意味着什么?如何让它发挥作用 非常感谢你帮助我 class Program { protected static IMongoClient _client

我知道你们可能觉得我是个彻头彻尾的无名小卒,但我是。 我正在尝试使用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);
                    }

}
类程序
{
受保护的静态IMongoClient\u客户端;
受保护的静态IMongoDatabase\u数据库;
公共静态void Main()
{
_客户端=新的MongoClient();
_数据库=_client.GetDatabase(“测试”);
Task simpleTask=Tasky();
}
公共异步任务Tasky()
{
var文档=新的BsonDocument
{
{“地址”,新的B文件
{
{“街”、“2大道”},
{“zipcode”,“10075”},
{“建筑”、“1480”},
{“coord”,新贝索纳雷{73.9557413,40.7720266}
}
},
{“自治区”、“曼哈顿”},
{“烹饪”、“意大利”},
{“等级”,新BsonArray
{
新的B文件
{
{“日期”,新的日期时间(2014,10,1,0,0,0,DateTimeKind.Utc)},
{“等级”,“A”},
{“分数”,11}
},
新的B文件
{
{“日期”,新的日期时间(2014,1,6,0,0,0,DateTimeKind.Utc)},
{“等级”,“B”},
{“得分”,17}
}
}
},
{“name”,“Vella”},
{“餐厅id”,“41704620”}
};
var collection=_database.GetCollection(“餐厅”);
等待收集。插入同步(文档);
}
}

尝试理解更简单的版本,然后阅读
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);
}
var集合=新的MongoClient(“mongodb://localhost“”。GetServer()
.GetDatabase(“您的_db”).GetCollection(“您的_集合”);
var cursor=collection.FindAll();
foreach(游标中的var文档){
控制台写入线(doc);
}

光标
用于逐个获取文档。

????????????????????????????????????????