NHibernate投影-如何投影集合

NHibernate投影-如何投影集合,nhibernate,Nhibernate,假设我只需要从一个实体中选择一列/几列,但在一个查询中选择多个子项。 我一直在尝试投影,但在collections属性上出现错误。这是一种正常情况,但无法找到有关仅投影集合属性的信息 Customer customerAlias = null; Order orderAlias = null; var list = _session.QueryOver<Customer>(() => customerAlias) .JoinAlias(

假设我只需要从一个实体中选择一列/几列,但在一个查询中选择多个子项。 我一直在尝试投影,但在collections属性上出现错误。这是一种正常情况,但无法找到有关仅投影集合属性的信息

Customer customerAlias = null;
Order orderAlias = null;
 var list = _session.QueryOver<Customer>(() => customerAlias)
                    .JoinAlias(x => x.Orders, () => orderAlias, JoinType.LeftOuterJoin)
                    .Select(
                       Projections.Property(() => customerAlias.Name),
                       Projections.Property(() => customerAlias.Orders))//this is the issue
                   .List<object>();

如何反转查询(假设订单具有客户属性):

var list=\u session.QueryOver()
.选择(
Projections.Property(o=>o.Customer.Name),
Projections.Property(o=>o.OrderProperty1),
Projections.Property(o=>o.OrderProperty2))//等。。
.List();

无法在NH 3.3中完成

可能重复的请不要重复问题…您选择了两个属性,可能是。List()
System.IndexOutOfRangeException : Index was outside the bounds of the array
var list = _session.QueryOver<Order>()
                .Select(
                   Projections.Property(o => o.Customer.Name),
                   Projections.Property(o => o.OrderProperty1),
                   Projections.Property(o => o.OrderProperty2)) // etc..
               .List<object[]>();