如何使用最新版本的C#(1.8.2+)驱动程序获取MongoCursorEnumerator <T>?

Val*_*Val 4 c# ienumerable mongodb mongodb-query mongodb-.net-driver

在以前使用1.8.2版本的C#MongoDB驱动程序的代码中遇到一些问题:

使用以前版本的驱动程序,我可以执行以下操作:

private MongoCursorEnumerator<T> InitializeCursor()
{
    var cursor = _queue.Find(Query.GT("_id", _lastId));
    return MongoCursorEnumerator<T>cursor.GetEnumerator();
}
Run Code Online (Sandbox Code Playgroud)

现在,此代码生成异常:

无法使用类型"d__0"键入"MongoDB.Driver.MongoCursorEnumerator`1".

需要转换为MongoCursorEnumerator,因为它具有IsDead属性,稍后在代码中用于重新初始化游标.不知何故,向上扩展到MongoCursorEnumerator不再有效.任何人都知道为什么会发生这种情况或者可能解决这个问题的方法是什么?

小智 5

从V1.8开始,你必须使用MongoCursorEnumerator的构造函数.

return new MongoCursorEnumerator<T>(cursor);
Run Code Online (Sandbox Code Playgroud)

遗憾的是文档中没有提示 - 您必须查看源代码: - /