FineUI 官方论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

本论坛已关闭(禁止注册、发帖和回复)
请移步 三石和他的朋友们

FineUI首页 WebForms - MVC & Core - JavaScript 常见问题 - QQ群 - 十周年征文活动

FineUI(开源版) 下载源代码 - 下载空项目 - 获取ExtJS - 文档 在线示例 - 版本更新 - 捐赠作者 - 教程

升级到 ASP.NET Core 3.1,快、快、快! 全新ASP.NET Core,比WebForms还简单! 欢迎加入【三石和他的朋友们】(基础版下载)

搜索
查看: 3901|回复: 8
打印 上一主题 下一主题

[已经解决]为何分页时,单页记录数略大,翻会明显变慢??

[复制链接]
跳转到指定楼层
楼主
发表于 2014-4-2 10:45:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 bluer 于 2014-4-3 13:40 编辑

4.0 为何分页时,单页记录数越大,翻页就会随单页记录增加明显变慢?  常用的每页20-50条记录,速度都有点接受不了。。

1. 和数据库用时没有关系。因为示例里没有用到数据库文件读取。用的是三石提供的例子,只是增加了单页记录数。
同样的数据源,一页显示5条记录,就飞快。那怕有500页。

附件:用的是三石提供的例子,只是增加了单页记录数。

有什么好办法吗? 是4.0grid变慢了???还请三石帮忙看看。



另外:
假设有两页数据共60条记录,GRID每页50条,那么第一页50条,第二页10条,现象:
第一次打开页面,显示第一页很快,没有问题。
点到第二页,10条记录显示,没有问题,
再点回第一页,就显示的很慢?比第一次载入页面要明显的慢???这又是为什么 ?



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
板凳
发表于 2014-4-2 15:01:36 | 只看该作者
刚试了下,每页显示50条记录,单页显示很快啊。我用的是实际数据库分页,数据库中是通过存储过程来实现取单页数据的,可以参考wuqi分页。
地板
发表于 2014-4-2 15:07:45 | 只看该作者
没发生,你用的啥浏览器。在官网示例能否重现?
5#
 楼主| 发表于 2014-4-3 08:44:45 | 只看该作者
本帖最后由 bluer 于 2014-4-3 09:13 编辑
sanshi 发表于 2014-4-2 15:07
没发生,你用的啥浏览器。在官网示例能否重现?


firefox  快点  chrome 慢(2-3秒),  IE11很慢(》5秒)。

见附件,我给虚拟了4页,其实每一页都是同样的50条数据,速度有点慢的。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
6#
 楼主| 发表于 2014-4-3 11:19:25 | 只看该作者
即使不分页,只要页面生成后,再后台重新载入不同的数据,记录略多(》30),就很慢了。后台数据生成只用时2毫秒,可是到前台显示,就要6秒以上,

看示例:后台代码很简单。就是生成不同记录数记录。


  1. protected void GetDataTableAll(int RecCount)
  2. {
  3. DateTime dt1 = DateTime.Now;
  4. DataTable table = new DataTable();
  5. table.Columns.Add(new DataColumn("Id", typeof(int)));
  6. table.Columns.Add(new DataColumn("Name", typeof(String)));
  7. table.Columns.Add(new DataColumn("Major", typeof(String)));

  8. DataRow row = null;

  9. for (int i = 0; i < RecCount; i++)
  10. {
  11. row = table.NewRow();
  12. row[0] = i;
  13. row[1] = "这是" + RecCount + "条数据";
  14. row[2] = "计算机应用技术";
  15. table.Rows.Add(row);
  16. }
  17. Grid1.DataSource = table;
  18. Grid1.DataBind();
  19. TimeSpan ts = DateTime.Now - dt1;
  20. labTs.Text = "后台数据生成用时:" + ts.TotalMilliseconds.ToString() + "毫秒";
  21. }
  22. protected void Button1_Click(object sender, EventArgs e)
  23. {
  24. GetDataTableAll(10);
  25. }
  26. protected void Button2_Click(object sender, EventArgs e)
  27. {
  28. GetDataTableAll(100);
  29. }
  30. protected void Button3_Click(object sender, EventArgs e)
  31. {
  32. GetDataTableAll(50);
  33. }
复制代码



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
7#
发表于 2014-4-3 11:59:20 | 只看该作者
bluer 发表于 2014-4-3 08:44
firefox  快点  chrome 慢(2-3秒),  IE11很慢(》5秒)。

见附件,我给虚拟了4页,其实每一页都是同样 ...

你只给了一个页面,所以没法具体测试。

不过我看你已经使用了数据库分页,50条数据的话,应该不是问题。
8#
 楼主| 发表于 2014-4-3 13:25:55 | 只看该作者
sanshi 发表于 2014-4-3 11:59
你只给了一个页面,所以没法具体测试。

不过我看你已经使用了数据库分页,50条数据的话,应该不是问题。 ...

ok.  已经解决。

发现,早些时候下载的EXTJS 里的文件 ,和现在这里下载的大小不同。可能是JS版本引起的。
谢谢!
9#
发表于 2014-4-3 13:49:22 | 只看该作者
bluer 发表于 2014-4-3 13:25
ok.  已经解决。

发现,早些时候下载的EXTJS 里的文件 ,和现在这里下载的大小不同。可能是JS版本引起的 ...

哦。更新FineUI(开源版)的同时也要相应的更新 extjs 目录
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|FineUI 官方论坛 ( 皖ICP备2021006167号-1 )

GMT+8, 2024-11-26 20:21 , Processed in 0.049286 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表