c# - linq sql - 聚合计数

标签 c# linq-to-sql

我有一些返回正确数据的 linq。

var numEmails = (from row in EmailBatchProposal  
where row.EmailBatchId == emailBatchId
select row.EmailBatchProposalId).Count();

但是,如果我正确理解 linq,这不会以最佳方式执行。它获取所有数据,然后遍历列表并计算行数。我真正想要的是 linq (在后台)使用如下:

Select count(*) from ...

我相信性能原因是显而易见的。

有谁知道正确的方法吗?

最佳答案

实际上,如果 linq 查询与实现 IQueryable 并支持转换为基础 SQL 变体的集合一起使用,则正确转换示例中的 Count 函数是一项非常基本的功能。

关于c# - linq sql - 聚合计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2097564/

相关文章:

c# - CheckBox 的删除线字体样式

c# - 在使用 Linq-to-sql 完成插入之前,如何锁定表以防止写入操作

c# - 如何通过linq to sql中的子查询检查组中的记录

sql-server - VB.NET - 创建 Nullable(Of T) 且 HasValue = False

c# - 使用泛型方法返回 list<T>,其中 T 可以是共享相同结构的三种类型之一

c# - 如何从 C# 中的图形对象获取位图/图像?

c# - 订阅 RSS 提要

c# 在彼此之间转换谓词

c# - C#条件对象声明

c# - 使用 ASP.NET 从 C# 中引用 jQuery 生成的隐藏字段