Marks the starting point of an explicit transaction.
The ExplicitBeginTransaction method represents the point at which the data referenced by a session is consistent. All data modifications made after calling the ExplicitBeginTransaction method can be rolled back. This allows data to be returned to this known state of consistency.
Once started, an explicit transaction lasts until one of the following occurs:
- The modifications are committed via the Session.ExplicitCommitTransaction method.
- The modifications are discarded via the Session.ExplicitRollbackTransaction method or by disposing of Session.
In a session, you need to use the ExplicitBeginTransaction method, in combination with the Session.BeginTrackingChanges method, that allows for tracking changes made to persistent objects within the opened explicit transaction. Units of work provide this capability out of the box, so to simplify tracking changes you may consider using them. In addition, you can simplify the management of explicit transactions, by means of explicit units of work.
The ExplicitBeginTransaction method throws an exception, if an explicit transaction has already been started.