What's the best way to refresh entities in nhibernate

Katalonis picture Katalonis · Nov 5, 2010 · Viewed 17.9k times · Source

I would like to refresh an entity and all its child collections. What is the best way to do this? I'm talking about nhibernate:)

I've read about session.Evict, session.Refresh...

But I'm still not sure if doing like:

RefreshEntity<T>(T entity)
{
 session.Evict(entity);
 session.Refresh(entity);
}

would work exactly how I want it to work

Is it going to work? If not What else I can do?

Answer

Diego Mijelshon picture Diego Mijelshon · Nov 5, 2010

Refresh after Evict probably won't work.

Theoretically, Refresh alone should be enough. However, it has known issues when elements of child collections have been deleted.

Evict followed by Get usually gets things done.