Ah... in this case items should be a List not a IList nor ICollection... I'm not sure but seems that using interfaces re-linq generates a different tree.
-- Fabio Maulo El 22/09/2010, a las 06:23, Stefan Wenig <[email protected]> escribió: > PS: if that's not supported, you can also try > var score = from s in NHibernateSession.Linq<Score>() > where items.Contains (s.Item) > select s; > > On Sep 22, 11:03 am, Stefan Wenig <[email protected]> wrote: >> This would be the correct code: >> >> IList<Item> item = FromSomeSource(); >> var score = from s in NHibernateSession.Linq<Score>() >> join i in items on s.Item equals i >> select s; >> >> Looks weird, but the thing is: >> - If you have a query source and join an in-memory collection to it, >> you create a query that receives the collection. >> - If you have an in-memory collection and join a query to it, the >> query is executed and then joined to the collection. >> Don't know if NH's LINQ provider supports this though (re-linq does). >> >> Technically, the reason is the parameter list of Queryable.Join: >> IQueryable<TOuter>, IEnumerable<TInner>. One could just create a new >> extension method that supports the other way too, but I'd be careful >> with that kind of ideas ;-) >> >> Cheers, >> Stefan >> >> On Sep 22, 12:02 am, Scott <[email protected]> wrote: >> >> >> >>> Can someone tell me why when I use the NHibernate Linq inhibitor it >>> gets the entire table when I trace it in Sql Profiler and if I use it >>> in the from it gets the entire table 1 record at a time. >> >>> Simple query >> >>> IList<Item> item = FromSomeSource(); >>> var score = (from i in items >>> join s in NHibernateSession.Linq<Score>() on i equals s.Item >>> select s);- Hide quoted text - >> >> - Show quoted text - > > -- > 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. > -- 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.
