我尝试制作重复检查方法,到目前为止我使用:
private bool CheckDuplicate(string name)
{
var result = _db.Foo.Any(f => f.Name == name);
return result;
}
是否值得/可能以异步方式进行此操作?
据我了解(仍在学习),此方法必须遍历 Foo 表中的所有条目来检查我的状况,直到第一个找到的结果。但在 Microsoft_EF_Page 上我读到:
只有导致查询执行的运算符才有异步对应项。
我开始困惑了...
到目前为止,数据库有数十万条记录可供挖掘,并且还在不断增长。 我尝试在 EF 中找到 AnyAsync() 方法,但似乎不存在。
祝大家有美好的一天!
你应该能够做到:
private async Task<bool> CheckDuplicateAsync(string name)
{
var result = await _db.Foo.AnyAsync(f => f.Name == name);
return result;
}
我不确定你为什么没有看到
AnyAsync()
。正如 @gunr2171 在评论中发布的那样,它应该可用。