NHibernate QueryOver用于获取不超过N天的记录

时间:2012-06-23 19:27:41

标签: nhibernate linq-to-nhibernate queryover

检索不超过30天的记录时遇到问题。由于今天的日期是6月24日,我想选择不超过5月23日的记录。 那就是我需要在5月23日到今天之间的所有记录。 为此,正在实施以下查询

session.QueryOver<Property>().WhereRestrictionOn(x => x.DateUpdated).IsBetween(DateTime.Now).And(DateTime.Now.AddDays(-30)).List();

Query运行时没有任何错误,但List为空。

通过visual studio调试器看到它​​是

  

session.QueryOver()。WhereRestrictionOn(x =&gt;   x.DateUpdated)。IsBetween(DateTime.Now).And(DateTime.Now.AddDays(-30))。List()Expression   不能包含lambda表达式

我按照here中的模拟编写了查询。

1 个答案:

答案 0 :(得分:1)

尝试翻转'between'子句的顺序 - IsBetween(DateTime.Now.AddDays(-30)).And(DateTime.Now)