You may define a filter for the order collection in the mapping and use it
with session.EnableFilter
Am schrieb DannyT <[email protected]>:
I'm trying to fetch a collection of root entities with some of their
children. I then need to iterate these to create a dto to send to client,
Ie the client wants all entities that have changed so it can update a
local database.
The problem is when I try to iterate the child collection NH tries to
lazy load the entire collection rather than just iterating through what
it has.
Eg
var customers = session.CreateCriteriaCustomer>()
.CreateAlias("Orders", "order")
.Add(Restrictions.Gt("o.LastModified", lastModifiedDate)
.List();
foreach(var customer in customers)
foreach(var order in customer)
// triggers lazy load of all orders for this customer
How can I ensure I only loop through the filtered collection? The only
alternative is to grab the child collection by itself and send that but
this is a complex object graph which will mean I end up having to send
lots of collections, it seemed much cleaner to send the root entity with
the relevant collections filtered.
Surely I'm missing something obvious here?
--
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.