如何创建使用个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