我一直面临着获取用户发布的最新帖子的问题。 我编写了以下Nhibernate查询,如下所示。
public IList<T> GetLatest10Posts()
{
using (var session = sessionFactory.OpenSession())
using (var transaction = session.BeginTransaction())
{
var queryString = String.Format("SELECT TOP 10 FROM {0} ORDER BY DateUpdated DESC", typeof(T));
var returnVal = session.CreateQuery(queryString).List<T>();
transaction.Commit();
return returnVal;
}
}
抛出异常
抛出了类型'Antlr.Runtime.NoViableAltException'的异常。靠近第1行第11列
注意:DateUpdated是列名,属于DateTime类型,它存在于所有继承实体中。
QueryOver api有没有运气,因为我正在努力实现这样的目标:
session.QueryOver<T>().Take(10).OrderBy().Desc