如何使用 CreateCriteria 在 Nhibernate 中创建以下 SQL 语句:
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