Is there a good explanation out there on what exactly lazy="extra" is capable of?
All the posts I've seen all just repeat the fact that it turns references to MyObject.ItsCollection.Count
into select count(*) queries (assuming they're not loaded already).
I'd like to know if it's capable of more robust things, like turning MyObject.ItsCollection.Any(o => o.Whatever == 5)
into a SELECT ...EXISTS
query.
Section 18.1 of the docs only touches on it. I'm not an NH developer, so I can't really experiment with it and watch SQL Profiler without doing a bit of work getting everything set up; I'm just looking for some sort of reference describing what this feature is capable of.
Thank you!
Best Answer
for version 2.x it is only used to translate a
collection.Count()
into aselect count
and as far as i can see in the source, it will also allow the constructcollection[5]
to fetch that particular entity (with index 5) instead of hydrating the whole collection.For version 3.x i didn't see anything related in the release notes