我可以异步使用“Any()”方法吗?

问题描述 投票:0回答:1

我尝试制作重复检查方法,到目前为止我使用:

private bool CheckDuplicate(string name)
{
    var result = _db.Foo.Any(f => f.Name == name);
    return result;
}

是否值得/可能以异步方式进行此操作?

据我了解(仍在学习),此方法必须遍历 Foo 表中的所有条目来检查我的状况,直到第一个找到的结果。但在 Microsoft_EF_Page 上我读到:

只有导致查询执行的运算符才有异步对应项。

我开始困惑了...

到目前为止,数据库有数十万条记录可供挖掘,并且还在不断增长。 我尝试在 EF 中找到 AnyAsync() 方法,但似乎不存在。

祝大家有美好的一天!

c# entity-framework
1个回答
0
投票

你应该能够做到:

private async Task<bool> CheckDuplicateAsync(string name)
{
    var result = await _db.Foo.AnyAsync(f => f.Name == name);
    return result;
}

我不确定你为什么没有看到

AnyAsync()
。正如 @gunr2171 在评论中发布的那样,它应该可用。

© www.soinside.com 2019 - 2024. All rights reserved.