NHibernate: получить строки, которые не имеют чужой записи в другой таблице, используя Criteria API - PullRequest
0 голосов
/ 12 января 2010

Итак, у меня есть транзакции и GLAllocations. Я хочу получить все транзакции, которые не имеют соответствующей записи в таблице GLAllocation. Следующий SQL-запрос дает желаемые результаты.

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

Есть ли способ представить это с помощью API критериев? Или мне нужно прибегнуть к HQL?

1 Ответ

0 голосов
/ 13 января 2010

Разобрался.

return (List<Transaction>)currentSession
.CreateCriteria(typeof(Transaction))
.CreateCriteria("GLAllocations", JoinType.LeftOuterJoin)
.Add(Restrictions.IsNull("GL"))
.List<Transaction>();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...