我已经使用MongoDB C#驱动程序以编程方式创建了一个新的文档集合。

在这一点上,我想以编程方式创建和建立索引。我怎样才能做到这一点?

最佳答案

从驱动程序的v2.0版本开始,有一个仅async的新API。不再使用旧的API,因为它是新API的阻塞外观,并且已弃用。
当前推荐的创建索引的方法是通过使用CreateOneAsync调用并等待带有IndexKeysDefinitionBuilders.IndexKeys:

static async Task CreateIndexAsync()
{
    var client = new MongoClient();
    var database = client.GetDatabase("HamsterSchool");
    var collection = database.GetCollection<Hamster>("Hamsters");
    var indexKeysDefinition = Builders<Hamster>.IndexKeys.Ascending(hamster => hamster.Name);
    await collection.Indexes.CreateOneAsync(new CreateIndexModel<Hamster>(indexKeysDefinition));
}

关于c# - 如何通过.NET在MongoDB中创建索引,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17807577/

10-10 22:22