我需要通过mongo c驱动程序设置分析级别。
Client.GetDatabase("test")返回IMongoDatabase接口,该接口在运行时解析为MongoDB.Driver.MongoDatabaseImpl
根据MongoDB .NET Driver API DocumentationMongoDatase类有一个SetProfilingLevel方法,我不能在运行时强制转换该方法。
顺便说一句,我还安装了2.0.1版的旧版驱动程序,因为documentation表示SetProfilingLevel方法在其中。

最佳答案

新的MongoDB驱动程序(至少2.3)没有更改分析级别的特定方法。
但您可以使用RunCommandAsync执行任何命令。

public async Task SetProfilingLevelAsync(IMongoDatabase database, int level)
{
    var command = new BsonDocumentCommand<BsonDocument>(new BsonDocument("profile", level));
    await database.RunCommandAsync(command);
}

10-06 16:01