如何解决将Gridview与大量数据绑定在一起时的性能问题
| 问题:我试图从数据库中获取大量条目并将其绑定到gridview,这使我的网站性能非常低。 我使用的是:我已经索引了搜索时主要涉及的参数。我也在会话中存储数据库返回的查询,并在分页时使用它,而不是再次命中数据库。 我想要的是?有什么方法可以让我们从数据库中检索网格页面大小的条目。我的网格页面大小是10。因此10个条目可以提高网站的性能。由于数据网格中有许多字段,因此获取它们需要花费时间。那么有什么解决办法吗? 查询代码:R1.DBLinqRDataContext objDB = new R1.DBLinqRDataContext();
return ( from p in (from a in objDB.table1
orderby a.date descending
join i in objDB.table2
on a.ID equals i.ID
where ((SqlMethods.Like(a.Location,\"%\" + loc + \"%\")) && (Category != String.Empty ? (Category == \"1\" ? a.Func < 50 : a.Func > 50) : (SqlMethods.Like(a.loc,\"%\" + loc + \"%\"))))
select a) join r3 in objDB.table3 on p.ID equals r3.CompanyID select p).Distinct().ToList();
有帮助吗?
如果有更多详细信息,请询问....谢谢
解决方法
对于另一个答案,执行[query] .Skip(x).Take(y)效果很好,但是请检查何时进行跳过和接听呼叫,是在调用IQueriable版本,而不是IEnumerable版。
如果调用IQueriable版本,则它将合并到查询中。 IEnumerable将执行查询,然后在内存中运行分页,您将失去所有性能提升。
,尝试通读
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。