c# - NHibernate Db Calls made in a web session -


i have started working on project using nhibernate orm tool.i read contextual session in nhibernate , understood idea behind it. have doubt in 1 area,

let's say, have employee domain , in http call,i calling repository getting employee id =1 , 3 times.

employee employee = _employeerepository.getemployee(1);

case 1: 1 db call case 2: 3 db calls.

please guide me on this.

rgds sandy

it depends on setup.

the first level cache hit db once against each session object use query with. if there single session shared repository.. 1 db call made. however, if each call repository causes more 1 session created, you'll multiple calls. default.

if second level cache enabled, each session created via sessionfactory share above properties. meaning, if have multiple repositories multiple session's came same sessionfactory instance.. loading same employee both repositories cause single db call.

there information in post - related hibernate, basic principles still apply nhibernate.

i recommend enable second level cache (we use syscache2) in web environment.. can guarantee session's share cached objects within single request (assuming of course, session lifetime management per-request.. should be..).


Comments

Popular posts from this blog

apache - Remove .php and add trailing slash in url using htaccess not loading css -

javascript - jQuery show full size image on click -