【问题标题】:MongoDB - can't use .explain() to get query info in C# code?MongoDB - 不能使用 .explain() 在 C# 代码中获取查询信息?
【发布时间】:2016-09-28 09:14:12
【问题描述】:

我正在使用 Mongo 2.2。如何使用 C# 访问查询信息?

目前有以下获取我的数据:

 var records = _collection.Find(filters).ToList<Vehicle>();

我试图添加一个 .explain(),类似于在查询结束时在 Robomongo 中可以执行的操作:

var records = _collection.Find(filters).explain();

但是,我相信它不存在,因为它不是游标。有谁知道我如何在 C# 中获取此查询数据?

【问题讨论】:

  • 你想要explain C# 中的结果数据?
  • 是的,确切地说,解释结果数据。
  • 您在 C# 中使用哪个 mongo 驱动程序?以及为什么要在 C# 中获得此结果,因为此信息仅与查询统计信息有关
  • Drivers: MongoDb.Bsonv(2.2.4), MongoDb.Driver(v2.2.4), MongoDb.Driver.Core(v2.2.4) - 我需要它,因为我们想看看到底是什么查询在应用程序中执行。

标签: c# mongodb


【解决方案1】:

MongoCollection 类的 FindAs() 方法产生 MongoCursor 类的 .Explain() 方法。我从this link 找到了答案。

var qLinq = Query<T>.Where(x => x.name=="jim");

var exp = Collection.FindAs<T>(qLinq).Explain()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-12-24
    • 1970-01-01
    • 1970-01-01
    • 2011-06-24
    • 2016-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多