繁体   English   中英

NHibernate投影:如何将QueryOver投影到int列表中?

[英]NHibernate projections: How to project QueryOver into list of int?

尝试将查询结果投影到整数列表中。 怎么做到这一点? 应该使用什么变压器。 AliasToBean不起作用,因为它需要setter。

var accessFeeYears = _session.QueryOver<AgreementAccessFee>()
                        .JoinAlias(a => a.FeeType, () => agreementAccessFeeTypeAlias)
                        .Where(x => x.Agreement.Id == request.AgreementId
                                                             && agreementAccessFeeTypeAlias.Code ==AgreementAccessFeeTypeCode.FlatChargePerInsured)
                         .SelectList(list => list
                                        .Select(a => a.PolicyYear).WithAlias(() =>policyYear))
                         .TransformUsing(Transformers.??????)
                         .List<int>();

其他方式:

_session.QueryOver<AgreementAccessFee>()
    .JoinAlias(a => a.FeeType, () => agreementAccessFeeTypeAlias)
    .Where(x => x.Agreement.Id == request.AgreementId
        && agreementAccessFeeTypeAlias.Code == AgreementAccessFeeTypeCode.FlatChargePerInsured)
    .SelectList(list => list
        .Select(a => a.PolicyYear))
    .List<int>();

(一起摆脱TransformUsing

这很容易,看完选项后,PassThrough看起来会起作用,而且确实如此。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM