我使用 Entity Framework 使用.skip
and实现了分页.take
。这很好用,但是当我在数据库中获取 100 万条记录的记录数时(UIClient 需要对网格页码进行计数),它需要花费大量时间,大约 600 毫秒,这是巨大的。
如果我不使用计数,只实现分页,那么它几乎不需要 20 到 25 毫秒。如何进行有效计数?我怎样才能从 600 毫秒降低到 50 毫秒左右?
我使用的示例查询:
int count = (from c in dbcontext.Customer
where c.customerName ='xyz' && c.date >= 'dateTime'
select c.CustomerId).Count();
我有索引Name
,dateTime
并且CustomerId
是主键。
提前致谢,
阿比奈