我将如何使用 NHibernate 执行以下查询?
SELECT ClientId, MAX(Id)
FROM Items
GROUP BY ClientId;
我将如何使用 NHibernate 执行以下查询?
SELECT ClientId, MAX(Id)
FROM Items
GROUP BY ClientId;
设法解决它,最终比我想象的要简单:
var result = from item in session.Linq<Item>()
group item by item.ClientId
into itemGroups
select new
{
id = itemGroups.Key,
max = itemGroups.Max(er => er.Id)
};
有关 NHibernate 的三个查询 API,请参阅 NHibernate 参考的第 14、15 和 16 章。
您还可以通过 NHibernate 使用 LINQ 查询。这可能是最简单的选择。使用Query<MyType>()
扩展方法ISession
获取IQueryable
.