使用nhibernate进行动态排序

时间:2009-08-14 19:58:48

标签: nhibernate dynamic-sql

假设您有一个名为Articles的表。

它包含以下列: ID,姓名,正文,创建,修改,浏览量等。

使用单一方法,是否可以提取文章列表,并将其传递给我想要订购的列?还有方向,即desc或asc。

1 个答案:

答案 0 :(得分:3)

我不确定“单一方法”评论的含义,但您可以使用Criteria执行此操作:

IList articles = session.CreateCriteria(typeof(Article))
  .AddOrder( Order.Asc("Name") )
  .List();

显然,您可以将其包装在一个方法中,并通过参数和排序方向传递您要订购的属性的名称。后者由Order.Asc()Order.Desc()指定。