Click or drag to resize

TransactionBase Class

Abstract transaction class which is used to control a serie of actions on multiple entities or entity collection classes. The database connection is opened in the constructor, so the transaction instance is ready to use. This class is the non-COM+ version, it will always start a new ADO.NET transaction and will not be using a COM+ transaction when callers are participating in such a transaction.
Inheritance Hierarchy
SystemObject
  SD.LLBLGen.Pro.ORMSupportClassesTransactionBase

Namespace:  SD.LLBLGen.Pro.ORMSupportClasses
Assembly:  SD.LLBLGen.Pro.ORMSupportClasses (in SD.LLBLGen.Pro.ORMSupportClasses.dll) Version: 5.9.0.0 (5.9.0)
Syntax
public abstract class TransactionBase : ITransaction, 
	ITransactionController, IDisposable

The TransactionBase type exposes the following members.

Constructors
  NameDescription
Protected methodTransactionBase(String)
Ctor, used in adapter situations where the transaction is started later on.
Protected methodTransactionBase(IsolationLevel, String)
CTor. Will read the connection string from an external source.
Protected methodTransactionBase(IsolationLevel, String, String)
CTor.
Protected methodTransactionBase(IsolationLevel, String, String, Boolean, Boolean)
CTor.
Top
Properties
  NameDescription
Public propertyConnectionString
Gets the connection string used for the connection with the database. Only settable with the constructor.
Public propertyConnectionToUse
The connection object to use with this transaction.
Public propertyEntitiesInTransaction
List of GUID's of the entities currently participating in this transaction. This collection is used to keep track of which entities already have been added during a recursive save.
Public propertyInSystemTransaction
Gets a value indicating whether a System.Transactions transaction is going on. If not, false is returned.
Public propertyName
Gets the name of the transaction. Only settable with the constructor.
Public propertyPhysicalTransaction
The physical transaction object used over ConnectionToUse.
Public propertyTransactionIsolationLevel
Gets the isolation level the transaction should use. Only settable with the constructor.
Top
Methods
  NameDescription
Public methodAdd
Adds the passed in object as a participant of this transaction.
Public methodAddAuditor
Adds the auditor passed in to the set of auditors to get audit entities from at commit.
Protected methodAssureConnectionIsPresent
Makes sure there's an active DbConnection object ready to be used. It doesn't open the connection yet, it only makes sure the connection object is there.
Protected methodCloseConnection
Close the active connection, if it's open.
Public methodCommit
Commits the transaction in action. It will end all database activity, since commiting a transaction is finalizing it. After calling Commit or Rollback, the ITransaction implementing class will reset itself.
Public methodCommitAsync
Async variant of Commit. Commits the transaction in action. It will end all database activity, since commiting a transaction is finalizing it. After calling Commit or Rollback, the ITransaction implementing class will reset itself.
Protected methodCreateConnection
Creates a new DbConnection instance which will be used by all elements using this ITransaction instance. Reads connectionstring from .config file.
Protected methodCreateConnection(String)
Creates a new DbConnection instance which will be used by all elements using this ITransaction instance
Protected methodCreatePhysicalTransaction
Creates a new physical transaction object over the created connection. The connection is assumed to be open.
Public methodDispose
Implements the IDispose' method Dispose.
Protected methodDispose(Boolean)
Implements the Dispose functionality.
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Protected methodGatherEntitiesFromAuditorsToFlush
Will gather all entities to flush in the current transaction from auditors which have created these entities and store them in the container specified.
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Protected methodOnBeforeCommit
Called right before the physical transaction is committed.
Protected methodOnBeforeRollback
Called right before the physical transaction is rolled back.
Protected methodOpenConnection
Opens the contained connection if it's not alraedy open
Protected methodOpenConnectionAsync
Async variant of OpenConnection
Public methodRemove
Removes the passed in object from the transaction.
Protected methodReset
Resets the transaction object. All participants will be notified.
Public methodRollback
Rolls back the transaction in action. It will end all database activity, since commiting a transaction is finalizing it. After calling Commit or Rollback, the ITransaction implementing class will reset itself.
Public methodRollback(String)
Rolls back the transaction in action to the savepoint with the name savepointName. No internal objects are being reset when this method is called, so call this Rollback overload only to roll back to a savepoint. To roll back a complete transaction, call Rollback() without specifying a savepoint name. Create a savepoint by calling Save(savePointName)
Public methodSave
Creates a savepoint with the name savePointName in the current transaction. You can roll back to this savepoint using Rollback(String).
Protected methodStart
Starts the transaction if it hasn't been started yet.
Protected methodStartAsync
Starts the transaction if it hasn't been started yet.
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Top
Events
  NameDescription
Public eventTransactionCommitted
Raised when Commit was successful.
Public eventTransactionRolledback
Raised when Rollback was successful.
Top
Explicit Interface Implementations
  NameDescription
Explicit interface implementationPrivate propertyITransactionControllerIsTransactionInProgress
Gets IsTransactionInProgress. True when there is a transaction in progress.
Top
See Also