Saveorupdate is not updating
Load(typeof(Cat), cat ID); // in a higher tier of the application Cat mate = new Cat(); cat.
Mate = mate; // later, in a new session second Session.
In my previous and current project, I have run into cases where I needed to save an object to database using hibernate, and from time to time, I run into some sort of Hibernate Session Exception.
I did a bit of google search, and it turns out that when saving an object, I needed to make sure the object was attached to Hibernate session.
Many applications need to retrieve an object in one transaction, send it to the UI layer for manipulation, then save the changes in a new transaction.
(Applications that use this kind of approach in a high-concurrency environment usually use versioned data to ensure transaction isolation.) This approach requires a slightly different programming model to the one described in the last section.
So, if you need to use the updated object, you must get it from the returned object, not the parameter object.
You usually don't need Save Or Update() because NHibernate tracks changes to every loaded object.
Mate = potential Mate; // later, in a new session second Session. Update(mate); // update mate if it wants their state also updated.This method copies the state of the given object onto the persistent object with the same identifier. If there is no persistent instance currently associated with the session, it will be loaded. If the given instance is unsaved or does not exist in the database, NHibernate will save it and return it as a newly persistent instance. The returned object reflects the changes, and it is attached to hibernate session.MERGE method offers greater flexibility when it comes to saving data objects, since you need not worry about attaching object to Session.