代码之家  ›  专栏  ›  技术社区  ›  Roman

如何使用Castle ActiveRecord在两个表之间进行联接

  •  1
  • Roman  · 技术社区  · 14 年前

    我正在尝试使用DetachedCriteria执行ActiveRecord中的联接。我好像做不到。传输对象内部没有定义关系。在SQL中,我应该能够做到这一点,但似乎ActiveRecord想要强迫我定义关系。怎么回事?

    有人能给我指一些文件吗?

    1 回复  |  直到 14 年前
        1
  •  0
  •   Roman    14 年前

    如果别的什么都不起作用,坚持总是起作用的。我知道怎么做,很简单:

    DetachedCriteria SubmissionsQuery = DetachedCriteria.For<Submission>();
    
    SubmissionsQuery.Add(Restrictions.Eq("Kind", SubmissionKind.Question));
    SubmissionsQuery.SetProjection(Projections.Property("Id"));
    
    DetachedCriteria Filter = DetachedCriteria.For<Answers>();
    Filter.Add(Subqueries.PropertyIn("CommonId", SubmissionsQuery));
    Filter.SetFirstResult(Start);
    Filter.SetMaxResults (Size);
    
    ActiveRecordMediator<Answers>.FindAll(Filter);
    

    我希望下一个人能发现这个有用。