That did the trick... thanks!

And thanks for the note on performance.  I have been working on
optimizing my old queries that I did before NHProf.

On Jul 6, 4:12 pm, "Richard Brown \(gmail\)" <[email protected]>
wrote:
> IIRC you can write:
>
>     .CreateCriteria<Core.Domain.Application>()
>     .SetFetchMode<Core.Domain.Application>(app => app.ApplicationWorkflows,
> FetchMode.Eager)
>     .SetFetchMode<Core.Domain.Application>(app =>
> app.ApplicationWorkflows[0].ApplicationStatus, FetchMode.Eager)
>     .Add(SqlExpression.In<Core.Domain.Application>(app =>...
>
> Also remember to consider 
> performance:http://nhforge.org/blogs/nhibernate/archive/2008/09/06/eager-loading-...
>
> --------------------------------------------------
> From: "Mike" <[email protected]>
> Sent: Tuesday, July 06, 2010 7:46 PM
> To: "nhusers" <[email protected]>
> Subject: [nhusers] Setting FetchMode on a grandchild object
>
>
>
> > I have the following Criteria query (using Lambda extensions):
>
> > var workflowResult = repository.GetSession()
> >                .CreateCriteria<Core.Domain.Application>()
> >                .SetFetchMode<Core.Domain.Application>(app =>
> > app.ApplicationWorkflows, FetchMode.Join)
> >                .Add(SqlExpression.In<Core.Domain.Application>(app =>
> > app.ID, uniqueIds))
> >                .SetResultTransformer(new
> > DistinctRootEntityResultTransformer())
> >                .Future<Core.Domain.Application>();
>
> > This is working correctly.  Each Application eagerly loads the
> > ApplicationWorkflows collection.  However, I'd like to go one deeper
> > and load the ApplicationStatus object of each ApplicationWorkflow.  I
> > can do this with the following HQL but would like to translate to
> > Criteria:
>
> > var workflowQuery = "SELECT DISTINCT app" +
> >                               " FROM Application app" +
> >                               " JOIN FETCH app.ApplicationWorkflows
> > awf" +
> >                               " JOIN FETCH awf.ApplicationStatus" +
> >                               " WHERE app.ID IN (:appList2)";
>
> > Thanks!
>
> > --
> > 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.

Reply via email to