当我在Entity Framework中调用Count方法时,它是处理所有列还是仅处理一个或哪些?

ala*_*a27 6 .net c# sql optimization entity-framework

我正在寻找otimization.

当我在Entity Framework中调用Count方法时,它是处理所有列还是仅处理一个或哪些?

如果你有任何官方网站谈论这个,我将不胜感激.

谢谢.

Dav*_*ras 7

我不久前做了一些测试,发现EF对服务器进行了计数,它发送了一个带有SELECT COUNT的查询,所以它不会加载所有记录.

关于列,如果你指的是之间的区别COUNT(*)或者COUNT(Id)或者COUNT(1)我之前已经读过某些地方,对于SQL Server没有区别,无论如何COUNT(*)都会进行优化COUNT(1).

你可以在网上阅读很多文章或者在这里提问... ...不是100%你问的问题,但关于EF和ORM表现的类似话题......

如何在不加载内容的情况下COUNT在EntityFramework中的行?

http://ayende.com/blog/4387/what-happens-behind-the-scenes-nhibernate-linq-to-sql-entity-framework-scenario-analysis

如何优化实体框架查询

  • 你打败了我.我还要添加一篇关于Count的表现的链接http://geekswithblogs.net/BlackRabbitCoder/archive/2011/06/02/c.net-little-wonders-empty-defaultifempty-and- count.aspx (2认同)