NHibernate查询与父对象和子对象的顺序

时间:2011-05-16 11:15:27

标签: nhibernate nhibernate-criteria queryover

在尝试通过我们的一个NHibernate查询实现订单时,我遇到了一些问题。基本上我们有一个公司列表,每个公司都有一个或多个联系人。我们希望通过以下方式对返回的列表进行排序:

  • company.Name(asc),
  • contact.IsPrimaryContact(true first),
  • contact.Surname(ASC)。

这将意味着我们按字母顺序列出我们的公司,对于每家公司,我们将首先获得主要联系人,然后是所有非主要联系人,再次按姓氏字母顺序排列。

public class Contact
{
   public bool IsPrimaryContact{get;set;}
   public string Surname{get;set;}
}

public class Company
{ 
  public virtual string Name { get;set; } 
  public virtual IList<Contact> Contacts { get;set; } 
}

在我们的所有查询中(同时尝试了HCL和ICriteria),我只能按公司名称订购时获得所需的数据,但似乎无法理解能够在其中包含联系人的语法。我该怎么做?我甚至可以研究像MultiQuery这样的东西吗?

0 个答案:

没有答案