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の3つのクエリAPIについては、NHibernateリファレンスの第14、15、および16章を参照してください。
NHibernateを介してLINQクエリを使用することもできます。これは、最初から最も簡単な代替手段かもしれません。のQuery<MyType>()
拡張メソッドを使用して、ISession
を取得しIQueryable
ます。