I'm trying to emulate subject query with NHibernate's IQueryOver
. So far I have
var q = CurrentSession.QueryOver<ObjectModel.Order>().
WhereRestrictionOn(o => o.Buyer.ID).IsIn(partyIDs).
WhereRestrictionOn(o => o.Seller.ID).IsIn(partyIDs);
This, however, generates an and
query, whereas I need to have an or
operator between two where
clauses.
How is this done with IQueryOver
?
As it usually is, found question soon after explaining the problem to general public. Thanks, guys!
var q = CurrentSession.QueryOver<ObjectModel.Order>();
q.RootCriteria.Add(Restrictions.Or(
Restrictions.On<ObjectModel.Order>(o => o.Buyer.ID).IsIn(partyIDs),
Restrictions.On<ObjectModel.Order>(o => o.Seller.ID).IsIn(partyIDs)));