2011-06-24 41 views
0

选择使用QueryOver明确列下面是我用从的OrderDetail表名称列从项目表中获得的所有列HQL查询。从2个表

我可以使用QueryOver做到这一点吗?我不需要在QueryOverProjectionBuilder语句的Select子句中手动列出所有OrderDetail的列,而是?无论如何在QueryOver中使用“Select *”?

IList<OrderDetail> lstOD = Session.GetISession().CreateQuery("Select d, i.Name from OrderDetail d inner join d.Item i Where d.Order.Id = 1"); 

感谢您的帮助。

+0

如果您正在尝试创建投影,那么您无法做到这一点。如果您返回实体列表时没有问题,则不要指定选择列表。 – Vadim

回答

0

不幸的是,目前没有办法使用QueryOverSELECT *。这已经在NH Google Group上讨论过几次了。如果你真的想要这样的东西,那么你可以扩展QueryOver来遍历你已经映射的所有属性,并在封面下构建一个投影列表。