nhibernate - Override lazy loading behavior 'lazy=false' -


i override default lazy loading behavior set in mappings 'lazy=false'. can't change many parts of existing application depend on setting.

after spent hours on didn't find solution i'm asking here. how this?
want achieve fine tune query load needed.
i've tried already:

using queryover api:

var properties = session.queryover<property>()     .fetch(prop => prop.transactions).eager     .fetch(prop => prop.districts).eager     //i dont want load entities below mark     //them lazy - doesn't work     //i can see in sql getting loaded in separate queries     .fetch(prop => prop.districts.first().aliases).lazy     .fetch(prop => prop.districts.first().polygonpoints).lazy     .skip(i * pagesize)     .take(pagesize)     .list(); 

using criteria api:

var criteria = session.createcriteria<property>();     criteria.setfetchmode("transactions", nhibernate.fetchmode.join);     criteria.setfetchmode("districts", nhibernate.fetchmode.join);     criteria.setfetchmode("districts.aliases", nhibernate.fetchmode.select); // tried lazy     criteria.setfetchmode("districts.polygonpoints", nhibernate.fetchmode.select); // tried lazy     criteria.addorder(nhibernate.criterion.order.asc("id"));     criteria.setfirstresult(i * pagesize);     criteria.setmaxresults(pagesize);     var properties = criteria.list<property>(); 

using of above methods 'aliases' , 'polygonpoints' being loaded when calling list<>(). don't need them in process.

i'm using nhibernate 4.0.
ideas?

we cannot override mapping in case. can opposite way - have lazy in place - , use eager fetching querying.

the decision process (of reference loading) done outside of query, ex post. pre-loaded, cannot avoided.

solution here of 2 types.

  • the first preferred (by me) - best , make laziness default: ayende - nhibernate lazy, live
  • use projections. instruct nhibernate create 1 query, use transformer expected object graph - without proxies in it

there pretty clear example how (properly) use projection list references:

and need custom result transformer, ex-post create references returned data:


Comments

Popular posts from this blog

IF statement in MySQL trigger -

c++ - What does MSC in "// appease MSC" comments mean? -

javascript - Blogger related post gadget image Resize s72-c [ Need Expert Help ] -