Hej jag har en annan tråd här om NHibernate och DDD, men denna frågan rör inte just den tråden. Du ska inte arbeta i din domän-modell direkt mot nHibernate utan gå alltid via dina repositories.NHibermate och Lazyloading
Jo min fråga är följande, skall man använda sig av den inbyggda Lazyloadingen på dom fälten man väljer att göra det på eller skall man implemmentera den själv? genom att spara id vid inläsning och använda sig av egenskapade repositories som jag redan har skapat. Man kanske slipper skriva lika mycket kod i dessa repositories.
Finns det några nackdelar med NHibernate's lazyloadingfunktionalitet?
Tanken är också att man kanske skulle vilja ha in paging också kanske som t.ex. såhär.
OrderCollection orderCollection = Customer.Orders.Paging(2, 20);
Säg då att Customer.Orders är av typen OrderCollection också
och implemmenterar en metod OrderCollection Paging(int page, int numberInpage);
som i sin tur arbetar ner mot en repository alternativt direkt mot NHibernate.Sv: NHibermate och Lazyloading
När det gäller lazy-load så tycker jag att du ska förlita dig på nHibernates stöd. Onödigt att själv blanda in anrop från dina entiteter mot repositories, då är dom inte POCO längre.. finns sätt att lösa det med proxy pattern etc, men varför när stödet finns i nHibernate ;)
Här har du en post jag skrev om Lazy-load för länge sedan: http://fredrik.nsquared2.com/ViewPost.aspx?PostId=194
När det gäller paging så tycker jag att du lägger in den metoden i dina repositories..
/Fredrik Normén [MVP]
blog: http://fredrik.nsquared2.com