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"))))