我有和實體可以稱之爲Entity
和Child
集合Children
。 我有一個屏幕,其中用戶有Entity
信息,並有Children
集合的列表,但該集合可以變得非常大,所以我在考慮使用分頁:獲取前20個元素,並延遲加載下一個如果用戶明確按下下一個按鈕。setfirstresult&setmaxresult在子集合中
所以我在實體庫中創建一個函數與此簽名:
IEnumerable<Child> GetChildren(Entity entity, int actualPage, int numberOfRecordsPerPage)
我需要使用setfirstresult和setmaxresult,而不是在Agregate根實體,但孩子收藏。但是,當我使用這兩種配置時,他們總是指向HQL/Criteria查詢的實體類型。
其他替代方案是爲Child
類型創建HQL/Criteria查詢,設置最大和第一個結果,然後過濾Entity Children集合中的子查詢(通過使用子查詢)。 但我無法做到這個過濾器。如果是雙向關聯(Child引用父實體),則會更容易。
有什麼建議嗎?
任何
簡單,這樣的孩子沒有FK父?只有一個鏈接表? – dotjoe 2010-03-17 20:20:53
是的,只有一個鏈接表 – 2010-03-17 23:13:59