2011-09-02 64 views
1

我使用的数据表包含大量的数据(250K)。
我已经使用了DevExpress组件和nhibernate。
devexpress组件是服务器模式,但它不适合我,因为我使用的是nHibernate。
在表中也有很多列。以及与主表(250K记录)一起显示的5个关系表。 建议我实现目标的最佳方式是什么?
非常感谢我的英语。加载大量数据

编辑:
如何实现用小部分加载数据?

+0

问题是什么?你能更准确地完成你想要完成的任务吗? –

回答

2

如果我理解你的问题,你可能需要分页:加载和显示数据块。 NHibernate支持ICreteria和SetFirstResult/SetMaxResults的组合:

IList<MyObject> GetPageOfMyObjects(int pageSize, int zeroBasedPageNumber) { 

    return Session.CreateCriteria(typeof (MyObject)) 
        .SetFirstResult(pageSize*(pageNumber)) 
        .SetMaxResults(pageSize) 
        .List<MyObject>(); 

} 
+0

是的,但我做了其他的方法:SetFirstResult(0).SetMaxResult(LastRecord)。当需要时我会增加LastRecord。 – user348173

1

尝试使用分页。 同时检查devExpress ctx是否支持使用对象数据源进行虚拟分页,以便它们可以自动处理分页。