如何創建使用個createCriteria NHibernate的下面的SQL語句:如何使用NHibernate個createCriteria
SELECT distinct top 20 a.* from ActivityLog a left join WallPost w on a.ActivityLogId = w.ActivityLogId left join ItemStatus i on i.StatusId = w.ItemStatus
我總是傾向於擺脫所有的表都列在SQL語句產生重複返回即使我將它映射到ActivityLog表。我也是做尋呼如下面的代碼所示:
ICriteria crit = nhelper.NHibernateSession.CreateCriteria(typeof(Model.ActivityLog), "a").CreateAlias("a.WallPosts", "w",CriteriaSpecification.LeftJoin) .CreateAlias("w.ItemStatus", "i", CriteriaSpecification.LeftJoin) .SetMaxResults(pageSize).SetFirstResult(startRow).AddOrder(Order.Desc("a.Date"));
感謝
^h
延遲加載設置爲true – Hem 2012-07-05 13:33:28
NHibernate的變壓器 - 檢查distinctrootentity變壓器 – Chev 2012-07-05 14:19:36
嘗試,它得到的唯一的結果,但隨後它會影響分頁,因爲如果有重複,然後它會返回下的結果,那麼它應該 – Hem 2012-07-05 14:50:21