2011-09-02 84 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是否支持使用對象數據源進行虛擬分頁,以便它們可以自動處理分頁。