asp.net-mvc – LINQ to SQL分页和COUNT(*)
发布时间:2020-10-19 15:10:08 所属栏目:asp.Net 来源:互联网
导读:我正在使用我的Web应用程序中的PagedList类,如果您使用ASP.NET MVC和LINQ to SQL做任何事情,许多人可能会熟悉它.它已经被 Rob Conery发布了博客,类似的化身也被包含在像 Nerd Dinner这样的东西中.它的效果很好,但是我的DBA对未来潜在的性能问题提出了担忧. 他
|
我正在使用我的Web应用程序中的PagedList类,如果您使用ASP.NET MVC和LINQ to SQL做任何事情,许多人可能会熟悉它.它已经被 Rob Conery发布了博客,类似的化身也被包含在像 Nerd Dinner这样的东西中.它的效果很好,但是我的DBA对未来潜在的性能问题提出了担忧. 他的问题是由于这一行而发出的SELECT COUNT(*): TotalCount = source.Count(); 由于IQueryable.Count()方法调用,任何具有分页数据的操作都将触发其他查询(如下所示): SELECT COUNT(*) AS [value] FROM [dbo].[Products] AS [t0] 有没有更好的方法来处理这个?我考虑使用PagedList类的Count属性来获取项目计数,但意识到这不起作用,因为它只计算当前显示的项目数(而不是总计数). 当数据库中存在大量数据时,这会对我的应用程序造成多大的性能影响? 解决方法iirc这个东西是索引统计数据的一部分,应该非常有效,你应该让你的DBA将他的问题置于其中,而不是过早地优化.(编辑:日照站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 如何使用ASP.NET MVC ApiController获取GET
- asp.net – 脚本标签和链接标签进入asp:内容或外部
- 认识ASP.NET配置文件Web.config
- asp.net-mvc – 为什么我在带有godaddy服务器的MVC3应用程序
- 如何在asp.net用户控件中使用jQuery ajax?
- asp.net – 如何禁用.NET事件日志警告?
- ASP.NET页面在IE缓存的清除办法
- asp.net-mvc – 在asp.net mvc中启动一组未选中的radiobutt
- 在asp.net App_Code目录中使用Nemerle
- asp.net – 如何在南希显示我的404页面?
