FineUI 官方论坛

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

作者: bluer    时间: 2014-4-2 10:45
标题: [已经解决]为何分页时,单页记录数略大,翻会明显变慢??
本帖最后由 bluer 于 2014-4-3 13:40 编辑

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

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

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

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

[attach]4961[/attach]

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




作者: bluer    时间: 2014-4-2 11:04
本帖最后由 bluer 于 2014-4-2 14:03 编辑

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


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

见附件,我给虚拟了4页,其实每一页都是同样的50条数据,速度有点慢的。
[attach]4961[/attach]
作者: bluer    时间: 2014-4-3 11:19
即使不分页,只要页面生成后,再后台重新载入不同的数据,记录略多(》30),就很慢了。后台数据生成只用时2毫秒,可是到前台显示,就要6秒以上,

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

[attach]4964[/attach]
  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. }
复制代码




作者: sanshi    时间: 2014-4-3 11:59
bluer 发表于 2014-4-3 08:44
firefox  快点  chrome 慢(2-3秒),  IE11很慢(》5秒)。

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

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

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

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

ok.  已经解决。

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

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

哦。更新FineUI(开源版)的同时也要相应的更新 extjs 目录




欢迎光临 FineUI 官方论坛 (https://fineui.com/BBS/) Powered by Discuz! X3.4