首页 > 解决方案 > Mongo C# JSON 阅读器期待一个值,但发现'replSetGetStatus'

问题描述

我无法找到从 Mongo C# 驱动程序 版本 2.7.2调用 shell 命令的正确方法

  public async Task RsStatus()
  {
     var res = await _admin.RunCommandAsync<object>("replSetGetStatus");
  }

给我一个错误:

  JSON reader was expecting a value but found 'replSetGetStatus'

我猜这根本不是调用shell方法的方式。谁能给我一个例子?

提前致谢。

标签: c#mongodbmongodb-.net-driver

解决方案


db.adminCommand函数期望和对象作为参数(此处)传递,因此您可以利用BsonDocumentCommand泛型类型并获得 BsonDocument 的结果,请尝试:

var command = new BsonDocumentCommand<BsonDocument>(
                    new BsonDocument() { { "replSetGetStatus", 1 } });

var res = await _admin.RunCommandAsync<BsonDocument>(command);

推荐阅读