gpt4 book ai didi

.net - 使用 LINQ (to Entities) 查询对象是否存在

转载 作者:行者123 更新时间:2023-12-05 00:42:23 26 4
gpt4 key购买 nike

(我将“...to Entities”放在括号中,因为我根本不知道这是否重要。我想这是一个非常笼统的 LINQ 相关问题。)

我想用 LINQ (to Entities) 检查数据库中是否存在对象。目前我正在做以下事情:

using (MyEntitiesContext aCtx = new MyEntitiesContext())
{
var aQuery = from c
in aCtx.Client
where c.ClientID==1
select c;

Client aClient = aQuery.FirstOrDefault();

bool Exists = (aClient!=null);
...
}

但是(如果我没记错的话)这会从数据库中加载完整的客户端对象(如果客户端存在)。我实际上只对它是否存在感兴趣而不加载对象。

SQL 具有 SELECT COUNT(*)... 结构。我可以用 LINQ 做类似的事情吗?

感谢您的建议!

最佳答案

一种选择是使用 Any IQueryable 的方法。它将返回一个 bool 值,指示是否找到了符合指定条件的对象。

using (MyEntitiesContext aCtx = new MyEntitiesContext())
{
bool exists = (from c
in aCtx.Client
where c.ClientID==1
select c).Any();
}

一旦计算结果为 true,此方法也将停止运行。

关于.net - 使用 LINQ (to Entities) 查询对象是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2744733/

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