2010-01-12 68 views
0

所以我有事务和GLAllocations。我想获取GLAllocation表中没有相应记录的所有事务。以下SQL产生我想要的结果。NHibernate:使用Criteria API获取在其他表中没有外部记录的行

select t.* from [Transaction] t 
left join [GLAllocation] gla on gla.TransactionID = t.TransactionId 
where gla.glid is null 

有没有一种方法可以使用标准API来表示它?或者我需要诉诸于HQL?

回答

0

想通了。

return (List<Transaction>)currentSession 
.CreateCriteria(typeof(Transaction)) 
.CreateCriteria("GLAllocations", JoinType.LeftOuterJoin) 
.Add(Restrictions.IsNull("GL")) 
.List<Transaction>(); 
相关问题