NHibernate Criteria Query - 选择与加入的实体不同

时间:2009-11-18 02:00:17

标签: nhibernate criteria icriteria

我有一个Person实体。每个人都有一个国家,我想选择所有在其中有人的不同国家。此Criteria Query返回所有不同的CountryID的

criteria.SetProjection(Projections.Distinct(Projections.Property("Country")));

如何更改它以加入和获取国家/地区实体,而不仅仅是ID?

1 个答案:

答案 0 :(得分:2)

任何简单的方法都是使用子查询。也就是说,您可以在外部查询中选择国家ID与内部查询匹配的整个国家/地区。

Subqueries.PropertyIn(
  "Country",
  innerDetachedCriteriaWhichFindsCountriesWithPeopleAndProjectsCountryId)