尝试使用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?