FluentNhibernate Max()日期与其余值

时间:2017-04-11 09:14:52

标签: c# asp.net-mvc-5 fluent-nhibernate

尝试使用FluentNhibernate使用createCriteria查询下表。


IDCODE RATES DESCRIPTION EFFECTIVEDATE
1 SR 7 Standard Rated 2016-01-01 
2 SR 6 Standard Rated 2016-12-01 
3 TR 7 Transfer Rated 2016-01-01 
4 TR 6 Transfer Rated 2016-12-01 

选择Max" EffectiveDate"其中项目分组为"代码"

知道可以使用HQL完成。但是如果可能的话,我想尝试使用标准。

查询结果通缉


ID CODE RATES DESCRIPTION EFFECTIVEDATE
2 SR 6 Standard Rated 2016-12-01 
4 TR 6 Transfer Rated 2016-12-01 

尝试了以下代码。

DetachedCriteria maxDateQuery = DetachedCriteria.For<RatesModel>();
ProjectionList proj = Projections.ProjectionList();
proj.Add(Projections.Max("EFFECTIVEDATE"));
proj.Add(Projections.GroupProperty("CODE"));
maxDateQuery.SetProjection(proj);

var criteria = session.CreateCriteria<RatesModel>();
criteria.Add(Subqueries.PropertiesIn(new String[] {"datetime", "connectionid"}, maxDateQuery))
.List<RatesModel>();

但它有错误: &#39;子查询&#39;不包含&#39; PropertiesIn&#39;

的定义

所以无论如何都要这样做而不使用PropertiesIn?

0 个答案:

没有答案