日期:2014-05-17  浏览次数:20446 次

GridView绑定大数据后,点击画面任意可提交的按钮后画面奔溃
如果,当数据量很大的情况下绑定GridView,然后点击画面上任意可提交的按钮后画面奔溃,显示“Internet Explorer 无法显示该页面”,数据里小的情况下则正常。

问题:画面在大数据的情况下,如何不让画面奔溃?就算显示的慢点也可以。我也知道可以在数据库中进行分页,但这个问题就是在全部显示的情况下怎样设置画面才可以不奔溃?

------解决方案--------------------
分页。
分页。
分页。
------解决方案--------------------
你既然使用了分页干嘛还要显示全部呢?要显示全部的话去买高级的服务器把。。
------解决方案--------------------
客户端分页?难道你是首先把数据全部加载出来,然后再客户端分页?直接按需取数据哈,还有你是否在后台加ispostback判断
------解决方案--------------------
引用:
客户端将全部数据取了出来,然后放在VIEWSTATE中以便分页
请问为什么要这么做?这样做对服务器压力太大了,为什么不在后台或者前台按需取数据呢?你这样数据量不奔溃才怪,内存吃死去
------解决方案--------------------
用服务器内置分页
------解决方案--------------------
引用:
嗯,为了少连接数据库,将数据存放在VIEWSTATE中,就是这个VIEWSTATE导致了画面奔溃。
你这样为了少连数据库的做法还不如按需取数据好
------解决方案--------------------
试一试这个,
<httpRuntime
   maxRequestLength = "YOUR SIZE IN KB"
/>

不过我觉得这不是一个好主意。看你的权衡了。
是减少流量,减小ViewState.
还是减轻数据库压力,减少查询次数,增大ViewState.
------解决方案--------------------
你这viewstate得多大啊...
------解决方案--------------------
出现这个异常的原因正是因为上年12月29号那次微软发布的最后一次非正常更新程序引起的.在这次安全更新中对于asp.net单次的提交量做了一个最大量限制1000,出现这个异常正是因为页面提交量超过了1000这个限制.这个可以在web.config中更改:
<appSettings>
<add key="aspnet:MaxHttpCollectionKeys" value="5000" />
</appSettings>
------解决方案--------------------
viewstate只不过是一个加密过的hidden 类型的input。input的value长度是有上限的,如果你把很多数据放在里面,当然会崩溃。
你的设计真的很垃圾。
撸主的基础知识需要恶补。
------解决方案--------------------
用分页好,如果想减少读取数据库,用缓存。
------解决方案--------------------