We have briefly touched the topic of caching in multiple places earlier. Caching support in NHibernate is more extensive than most of the frameworks that I have come across so far. Following are the three different types of caches available in NHibernate:
ISessioncaches every entity that it loads from the database. This is default behavior and cannot be changed or turned off.