其他分享
首页 > 其他分享> > CodeGo.net>流利的NHibernate的-选择特定的列和计数与分组依据

CodeGo.net>流利的NHibernate的-选择特定的列和计数与分组依据

作者:互联网

我在流利的nhibernate中查询查询时遇到一些麻烦.
我有一张桌子:带有以下各列的书籍:

ID, NAME, YEAR, BOOK_TYPE, AUTHOR_ID

我想在Fluent NHibernate中执行以下sql查询:

SELECT BOOK_TYPE, COUNT(*)
FROM BOOKS
GROUP BY BOOK_TYPE

解决方法:

所谓的Fluent-NHibernate只是一个映射扩展.为了获取数据,我们需要NHibernate内置的n个查询功能:ICriteria,QueryOver甚至是LINQ.

根据文档,我们可以使用QueryOver API将投影用于上述情况

16.6. QueryOver – Projections

代码段:

IList selection =
    session.QueryOver<Book>()
        .SelectList(list => list
            .Select(c => c.BooktType)
            .SelectCount(c => c.ID))
        .List<object[]>();

标签:queryover,nhibernate,nhibernate-criteria,c,fluent-nhibernate
来源: https://codeday.me/bug/20191119/2035662.html