http://nhforge.org/blogs/nhibernate/archive/2009/12/17/queryover-in-nh-3-0.aspx
http://fabiomaulo.blogspot.com/2010/07/enhanced-query-object.html Yes, you understood what I meant. Now I see why you'd query the other way :) DateTime.. I guess I'm just weird :) On May 20, 10:32 am, Giulio Petrucci <[email protected]> wrote: > Hi Alex, > > On Fri, May 20, 2011 at 4:40 AM, H.Alex <[email protected]> wrote: > > I'd use > > QueryOver, for sure it would actually query the db and return just the > > results. > > I don't know the QueryOver API (by the way: I couldn't fine any > NHibernate API Reference... could anyone please link me?) and I forgot > to point out that I need to use the LINQ API (but I suppose it's not a > big deal :-)). > > > IList<VoicemailMessage> vms = > > session.QueryOver<VoicemailMessage>() > > .Where(vm => vm.Sender == sender && vm.LeftAt.CompareTo(from) > >>= 0 && vm.LeftAt.CompareTo(to) <= 0) > > .List(); > > Ok. Just a question: why using a DateTime.CompareTo(...) instead of <= or >= ? > > > I don't know why you would query the other way. If the point is to > > find all messages by a message sender during a period this should be > > enough. > > Agreed. :-) > > > This would return all employees that have left messages during the > > period. > > > IQueryOver<Employee,VoicemailMessage> empQuery = > > session.QueryOver<Employee>() > > .JoinQueryOver(emp => emp.SentMessages ) > > .Where(vm => vm.LeftAt.CompareTo(from) >= 0 && > > vm.LeftAt.CompareTo(to) <= 0); > > > The messages list would be lazily loaded and the whole list *would* be > > loaded should you access sender.SentMessages. > > Ok, now I see what you mean. So you'd add the .SentMessages property > to the IMessageSender interface and leave the VoiceMailMessage.Sender > property, right? I thought you intended to remove the latter. :-) > > Thanks again, > Giulio > > -- -- You received this message because you are subscribed to the Google Groups "nhusers" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/nhusers?hl=en.
