Fluent nhibernate 如何将实体转换为复合dto?(流利的英语)

Fluent nhibernate 如何将实体转换为复合dto?(流利的英语),fluent-nhibernate,Fluent Nhibernate,我在探索Nhibernate时遇到了一个问题 我有以下实体 以及相应的Dto 现在使用下面的查询,我尝试将订单转换为Orderdto select o FROM Order o join o.OrderItems join o.Customer 以下转换不起作用,可能是因为Order是复合类型 var query = session.GetNamedQuery("GetOrderSummaries") .SetResultTransformer(Tran

我在探索Nhibernate时遇到了一个问题

我有以下实体

以及相应的Dto

现在使用下面的查询,我尝试将订单转换为Orderdto

select o
  FROM Order o
  join o.OrderItems
  join o.Customer
以下转换不起作用,可能是因为Order是复合类型

var query = session.GetNamedQuery("GetOrderSummaries")
            .SetResultTransformer(Transformers.AliasToBean<OrderItemDto>());
var query=session.GetNamedQuery(“GetOrderSummaries”)
.SetResultTransformer(Transformers.AliasToBean());

对于这种情况,是否有现成的转换可用?

我个人会使用这种转换,而不是在Nhibernate/Fluent中进行转换(无论是否可行)。

我也尝试过这样做,但奇怪的是,当我创建一个新的实体对象(例如order=new order())时,这种转换会起作用,但当我使用Nhibernate检索它时却不会起作用。我想这可能是因为nibernate正在使用代理。它应该可以与代理一起工作,没有问题(只要ISession仍然打开)。尝试时会发生什么?