我需要通过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);
}