0

ユーザーが作成した最新の 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 
4

1 に答える 1

2

昨年、HQL 構文に関する記事を書きました。

手短に、from {0} order by DateUpdated desc take 10

于 2012-06-24T23:01:31.533 に答える