我正在尝试确定执行分页的最佳方法。
我有两种使用SubSonic抓取数据的选项:
1)itemDatumCollection.LoadAndCloseReader(sp.GetReader()); 要么 2)itemsDataSet = sp.GetDataSet();
我正在访问同一个存储过程。是否有一种使用LoadAndCloasReader()进行分页的简单方法?
我可以通过客户端上的GetDataSet加载所有数据 - 比如4000行,但似乎没必要,当我使用LoadAndCloseReader()时,这个数据量超过了我的WCF绑定参数(我认为设置得相当不错)返回一个复杂的对象:
maxBufferSize="20000000" maxBufferPoolSize="524288" maxReceivedMessageSize="20000000"
我猜想有几件事情:
1)GetDataSet()在返回数据时是否更快 - 我不需要复杂的集合对象(编码时它很好)?
2)如何使用我的TSQL sproc执行分页?
感谢。
答案 0 :(得分:0)
我选择了一种在MVVM中使用的方法,而不是MVC。我预先加载了所有数据,然后允许用户使用jQuery分页控件进行翻页,最小化对数据库的返回调用。初始响应需要更长的时间(但限制为100条记录),但为用户提供了快速的分页。