我在获取用户发布的最新 10 个帖子时遇到问题。我编写了以下 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