我在NHibernate中执行连接查询时遇到问题。 我有以下表格:母语者Nhibernate - 加入社区组查询
BOOKS:
ID, NAME, BOOK_TYPE, AUTHOR_ID
AUTHORS:
ID, FIRST_NAME, LAST_NAME, BIRTH_DATE
我想执行的功能NHibernate下面的SQL查询:
SELECT AUTHORS.ID, COUNT(BOOKS.ID)
FROM AUTHORS
INNER JOIN BOOKS
ON AUTHORS.ID = BOOKS.AUTHOR_ID
GROUP BY AUTHORS.ID;
类:
public class Book
{
public virtual int id{get; set;}
public virtual string Name{get; set;}
public virtual int booktype{get; set;}
public virtual Author author{get; set;}
}
public class Author
{
public virtual int id{get; set;}
public virtual string FirstName{get; set;}
public virtual string LastName{get; set;}
public virtual DateTime BirthDate{get; set;}
public virtual IList<Book> Books{get; set;}
}
这是我曾尝试:
GraphDTO graph = null;
Session.QueryOver<Book>()
.SelectList(list => list
.SelectGroup(x => x.Author.Id).WithAlias(() => graph.Id)
.SelectCount(x => x.Id).WithAlias(() => graph.BooksNum))
.TransformUsing(Transformers.AliasToBean<GraphDTO>())
.List<GraphDTO>();
请更新您的问题,以参加和组办呢您的班级和地图定义 – kayess
@ kayess发布了课程。 – Pachu