2012-11-12 48 views
0

我想基于特定的日期字段检索记录。 我的标准是只显示其值不在当前月份或大于今天日期的记录。NHibernate标准月比较

我已经编写了一个标准,用于获取未来日期的记录。 有人可以帮助我如何解决问题,显示不是在当前月份的记录。

非常感谢!

var criteria = Session.CreateCriteria<GLEntry>(); 
criteria.Add(Expression.Gt("EffectiveDate", DateTime.Today)); 

回答

2

只需要一个比当月的第一天少。

var firstOfMonth = new DateTime(DateTime.Today.Year, DateTime.Today.Month, 1); 
criteria.Add(Expression.Lt("EffectiveDate", firstOfMonth)); 
+0

谢谢!发现! 有一点是,如果我注释掉第一条标准,它只会带回记录。你怎么做或者与这两个? – ssokol91

+0

一个'或'可以用一个析取来完成......'criteria.add(Restrictions.Disjunction().Add(criteria1).Add(criteria2))' – dotjoe

+0

它实际上是一个AND而不是OR吗? 再次感谢! – ssokol91