NHibernate标准API-两个属性的最大顺序

NHibernate标准API-两个属性的最大顺序,nhibernate,sql-order-by,nhibernate-criteria,Nhibernate,Sql Order By,Nhibernate Criteria,我有一个PrivateMessage类,我想使用Criteria API按照CreationDate或LastAnswerDate(取决于哪个是最新的)的时间顺序获得用户的PM列表 如何在Criteria API中按这两个属性的最大值排序?我的代码如下所示: var dc = DetachedCriteria.For<PrivateMessage>(); ... dc.AddOrder(new Order("???"); return (IList<PrivateMessage

我有一个
PrivateMessage
类,我想使用Criteria API按照
CreationDate
LastAnswerDate
(取决于哪个是最新的)的时间顺序获得用户的PM列表

如何在Criteria API中按这两个属性的最大值排序?我的代码如下所示:

var dc = DetachedCriteria.For<PrivateMessage>();
...
dc.AddOrder(new Order("???");
return (IList<PrivateMessage>)FindAll(typeof(PrivateMessage), dc);
var dc=DetachedCriteria.For();
...
dc.AddOrder(新订单(“???”);
返回(IList)FindAll(typeof(PrivateMessage),dc);
CreationDate
DateTime
LastAnswerDate
DateTime?

谢谢!

谢谢:)。我通过合并解决了这个问题,因为一个属性可以为空,但您的解决方案将始终有效。
Order.Desc(
    Projections.Conditional(
        Restrictions.GtProperty("CreationDate", "LastAnswerDate"),
        Projections.Property("CreationDate"),
        Projections.Property("LastAnswerDate"))))