gpt4 book ai didi

c# - 如何在新的 mongo C# 驱动程序中执行 findAll 并使其同步

转载 作者:IT老高 更新时间:2023-10-28 13:04:42 25 4
gpt4 key购买 nike

我正在使用官方 C# 驱动程序执行 FindAll并升级到新驱动2.0。 FindAll已过时并替换为 Find。我正在尝试转换一个简单的方法,它返回一个列表 Class1 .在他们的文档中找不到使用 POCO 的实际示例

var collection = database.GetCollection<ClassA>(Collection.MsgContentColName);
return collection.FindAll().ToList();

有人可以帮我转换 2.0 驱动程序并返回列表而不是任务吗?

最佳答案

编辑:

他们决定添加回同步支持(尽管异步对于 IO 操作仍然更可取),因此您可以简单地使用:

var list = collection.Find(_ => true).ToList();

原文:

不要在异步代码上同步阻塞。这对性能不利,并可能导致死锁。

如果您想保持应用程序同步,建议您继续使用旧的同步驱动程序。

在新的 v2.0 驱动程序中,async 选项应如下所示:

async Task FooAsync()
{
var list = await collection.Find(_ => true).ToListAsync();
}

关于c# - 如何在新的 mongo C# 驱动程序中执行 findAll 并使其同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29709849/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com