System.Transactions Describes a committable transaction. Initializes a new instance of the class. An attempt to create a transaction under Windows 98, Windows 98 Second Edition or Windows Millennium Edition. Initializes a new instance of the class with the specified value. The maximum amount of time the transaction can exist, before it is aborted. An attempt to create a transaction under Windows 98, Windows 98 Second Edition or Windows Millennium Edition. Initializes a new instance of the class with the specified transaction options. A structure that describes the transaction options to use for the new transaction. An attempt to create a transaction under Windows 98, Windows 98 Second Edition or Windows Millennium Edition. is invalid. Begins an attempt to commit the transaction asynchronously. An interface that can be used by the caller to check the status of the asynchronous operation, or to wait for the operation to complete. The delegate that is invoked when the transaction completes. This parameter can be null, in which case the application is not notified of the transaction's completion. Instead, the application must use the interface to check for completion and wait accordingly, or call to wait for completion. An object, which might contain arbitrary state information, associated with the asynchronous commitment. This object is passed to the callback, and is not interpreted by . A null reference is permitted. Attempts to commit the transaction. is called on a transaction and the transaction becomes . is called and the transaction rolls back for the first time. Ends an attempt to commit the transaction asynchronously. The object associated with the asynchronous commitment. is called and the transaction rolls back for the first time. Gets the object provided as the last parameter of the method call. The object provided as the last parameter of the method call. Gets a that is used to wait for an asynchronous operation to complete. A that is used to wait for an asynchronous operation to complete. Gets an indication of whether the asynchronous commit operation completed synchronously. true if the asynchronous commit operation completed synchronously; otherwise, false. This property always returns false even if the operation completed synchronously. Gets an indication whether the asynchronous commit operation has completed. true if the operation is complete; otherwise, false. Controls what kind of dependent transaction to create. The dependent transaction blocks the commit process of the transaction until the parent transaction times out, or is called. In this case, additional work can be done on the transaction and new enlistments can be created. The dependent transaction automatically aborts the transaction if Commit is called on the parent transaction before is called. Describes a clone of a transaction providing guarantee that the transaction cannot be committed until the application comes to rest regarding work on the transaction. This class cannot be inherited. Attempts to complete the dependent transaction. Any attempt for additional work on the transaction after this method is called. These include invoking methods such as , , , , or any serialization operations on the transaction. The permission that is demanded by when management of a transaction is escalated to MSDTC. This class cannot be inherited. Initializes a new instance of the class. One of the values. Creates and returns an identical copy of the current permission. A copy of the current permission. Reconstructs a permission with a specified state from an XML encoding. The XML encoding used to reconstruct the permission. Creates and returns a permission that is the intersection of the current permission and the specified permission. A new permission that represents the intersection of the current permission and the specified permission. This new permission is null if the intersection is empty. A permission to intersect with the current permission. It must be the same type as the current permission. Returns a value that indicates whether the current permission is a subset of the specified permission. true if the current is a subset of the specified ; otherwise, false. A permission to test for the subset relationship. This permission must be the same type as the current permission. Returns a value that indicates whether unrestricted access to the resource that is protected by the current permission is allowed. true if unrestricted use of the resource protected by the permission is allowed; otherwise, false. Creates an XML encoding of the security object and its current state. A that contains the XML encoding of the security object, including any state information. Creates a permission that is the union of the current permission and the specified permission. An that represents the union of the current permission and the specified permission. A permission to combine with the current permission. It must be of the same type as the current permission. Allows security actions for to be applied to code using declarative security. This class cannot be inherited. Initializes a new instance of the class with the specified . One of the values. Creates a permission object that can then be serialized into binary form and persistently stored along with the in an assembly's metadata. A serializable permission object. Gets or sets a value indicating whether full (unrestricted) permission to the resource protected by the attribute is declared. true if full permission to the protected resource is declared; otherwise, false. Facilitates communication between an enlisted transaction participant and the transaction manager during the final phase of the transaction. Indicates that the transaction participant has completed its work. Determines whether the object should be enlisted during the prepare phase. The object does not require enlistment during the initial phase of the commitment process. The object must enlist during the initial phase of the commitment process. Specifies how distributed transactions interact with COM+ transactions. There is no synchronization between and . Search for an existing COM+ context and synchronize with it if one exists. The context (which can be retrieved by calling the static method of the class) and the ambient transaction (which can be retrieved by calling the static method of the class) are always synchronized. This introduces a performance penalty because new contexts may need to be created. Provides a mechanism for the hosting environment to supply its own default notion of . A object. Describes a DTC transaction. Aborts a transaction. An optional that indicates why the transaction is being aborted. This parameter can be null, indicating that no reason for the abort is provided. This value must be false. When is true, an asynchronous abort is performed and the caller must use ITransactionOutcomeEvents to learn about the outcome of the transaction. Commits a transaction. This value must be false. A value taken from the OLE DB enumeration XACTTC. This value must be zero. Retrieves information about a transaction. Pointer to the caller-allocated structure that will receive information about the transaction. This value must not be null. Describes an interface that a resource manager should implement to provide two phase commit notification callbacks for the transaction manager upon enlisting for participation. Notifies an enlisted object that a transaction is being committed. An object used to send a response to the transaction manager. Notifies an enlisted object that the status of a transaction is in doubt. An object used to send a response to the transaction manager. Notifies an enlisted object that a transaction is being prepared for commitment. A object used to send a response to the transaction manager. Notifies an enlisted object that a transaction is being rolled back (aborted). A object used to send a response to the transaction manager. Describes an object that acts as a commit delegate for a non-distributed transaction internal to a resource manager. Notifies a transaction participant that enlistment has completed successfully. An attempt to enlist or serialize a transaction. Notifies an enlisted object that the transaction is being rolled back. A object used to send a response to the transaction manager. Notifies an enlisted object that the transaction is being committed. A interface used to send a response to the transaction manager. Represents a transaction that is not a root transaction, but can be escalated to be managed by the MSDTC. Notifies an enlisted object that the transaction is being rolled back. Describes a resource object that supports single phase commit optimization to participate in a transaction. Represents the resource manager's implementation of the callback for the single phase commit optimization. A used to send a response to the transaction manager. Specifies the isolation level of a transaction. Volatile data can be read but not modified, and no new data can be added during the transaction. Volatile data can be read but not modified during the transaction. New data can be added during the transaction. Volatile data cannot be read during the transaction, but can be modified. Volatile data can be read and modified during the transaction. Volatile data can be read. Before a transaction modifies data, it verifies if another transaction has changed the data after it was initially read. If the data has been updated, an error is raised. This allows a transaction to get to the previously committed value of the data. The pending changes from more highly isolated transactions cannot be overwritten. A different isolation level than the one specified is being used, but the level cannot be determined. An exception is thrown if this value is set. Describes a delegated transaction for an existing transaction that can be escalated to be managed by the MSDTC when needed. Notifies an enlisted object that an escalation of the delegated transaction has been requested. A transmitter/receiver propagation token that marshals a distributed transaction. For more information, see . Facilitates communication between an enlisted transaction participant and the transaction manager during the Prepare phase of the transaction. Indicates that the transaction should be rolled back. Indicates that the transaction should be rolled back. An explanation of why a rollback is triggered. Indicates that the transaction can be committed. Gets the recovery information of an enlistment. The recovery information of an enlistment. An attempt to get recovery information inside a volatile enlistment, which does not generate any recovery information. Provides a set of callbacks that facilitate communication between a participant enlisted for Single Phase Commit and the transaction manager when the notification is received. Represents a callback that is used to indicate to the transaction manager that the transaction should be rolled back. Represents a callback that is used to indicate to the transaction manager that the transaction should be rolled back, and provides an explanation. An explanation of why a rollback is initiated. Represents a callback that is used to indicate to the transaction manager that the SinglePhaseCommit was successful. Represents a callback that is used to indicate to the transaction manager that the status of the transaction is in doubt. Represents a callback that is used to indicate to the transaction manager that the status of the transaction is in doubt, and provides an explanation. An explanation of why the transaction is in doubt. Represents a non-rooted transaction that can be delegated. This class cannot be inherited. Initializes a new instance of the class. The isolation level of the transaction A Represents a transaction. Creates a clone of the transaction. A that is a copy of the current transaction object. Gets or sets the ambient transaction. A that describes the current transaction. Creates a dependent clone of the transaction. A that represents the dependent clone. A that controls what kind of dependent transaction to create. Releases the resources that are held by the object. Enlists a durable resource manager that supports two phase commit to participate in a transaction. An object that describes the enlistment. A unique identifier for a resource manager, which should persist across resource manager failure or reboot. An object that implements the interface to receive two phase commit notifications. if the resource manager wants to perform additional work during the prepare phase. Enlists a durable resource manager that supports single phase commit optimization to participate in a transaction. An object that describes the enlistment. A unique identifier for a resource manager, which should persist across resource manager failure or reboot. An object that implements the interface that must be able to receive single phase commit and two phase commit notifications. if the resource manager wants to perform additional work during the prepare phase. Enlists a resource manager that has an internal transaction using a promotable single phase enlistment (PSPE). A interface implementation that describes the enlistment. A interface implemented by the participant. Enlists a volatile resource manager that supports two phase commit to participate in a transaction. An object that describes the enlistment. An object that implements the interface to receive two phase commit notifications. if the resource manager wants to perform additional work during the prepare phase. Enlists a volatile resource manager that supports single phase commit optimization to participate in a transaction. An object that describes the enlistment. An object that implements the interface that must be able to receive single phase commit and two phase commit notifications. if the resource manager wants to perform additional work during the prepare phase. Determines whether this transaction and the specified object are equal. true if and this transaction are identical; otherwise, false. The object to compare with this instance. Returns the hash code for this instance. A 32-bit signed integer hash code. Gets the isolation level of the transaction. One of the values that indicates the isolation level of the transaction. Tests whether two specified instances are equivalent. true if and are equal; otherwise, false. The instance that is to the left of the equality operator. The instance that is to the right of the equality operator. Returns a value that indicates whether two instances are not equal. true if and are not equal; otherwise, false. The instance that is to the left of the inequality operator. The instance that is to the right of the inequality operator. Rolls back (aborts) the transaction. Rolls back (aborts) the transaction. An explanation of why a rollback occurred. Gets a with the data required to serialize this transaction. The to populate with data. The destination (see ) for this serialization. Indicates that the transaction is completed. An attempt to subscribe this event on a transaction that has been disposed. Retrieves additional information about a transaction. A that contains additional information about the transaction. The exception that is thrown when an operation is attempted on a transaction that has already been rolled back, or an attempt is made to commit the transaction and the transaction aborts. Initializes a new instance of the class. Initializes a new instance of the class with the specified serialization and streaming context information. A object that describes a failed serialization. A object that describes a failed serialization context. Initializes a new instance of the class with the specified message. A that contains a message that explains why the exception occurred. Initializes a new instance of the class with the specified message and inner exception. A that contains a message that explains why the exception occurred. Gets the exception instance that causes the current exception. For more information, see the property. Represents the method that handles the event of a class. The source of the event. The that contains the event data. Provides data for the following transaction events: , . Initializes a new instance of the class. Gets the transaction for which event status is provided. A for which event status is provided. The exception that is thrown when you attempt to do work on a transaction that cannot accept new work. Initializes a new instance of the class. Initializes a new instance of the class with the specified serialization and streaming context information. A object that describes a failed serialization. A object that describes a failed serialization context. Initializes a new instance of the class with the specified message. A that contains a message that explains why the exception occurred. Initializes a new instance of the class with the specified message and inner exception. A that contains a message that explains why the exception occurred. Gets the exception instance that causes the current exception. For more information, see the property. The exception that is thrown when an operation is attempted on a transaction that is in doubt, or an attempt is made to commit the transaction and the transaction becomes InDoubt. Initializes a new instance of the class. Initializes a new instance of the class with the specified serialization and streaming context information. A object that describes a failed serialization. A object that describes a failed serialization context. Initializes a new instance of the class with the specified message. A that contains a message that explains why the exception occurred. Initializes a new instance of the class with the specified message and inner exception. A that contains a message that explains why the exception occurred. Gets the exception instance that causes the current exception. For more information, see the property. Provides additional information regarding a transaction. Gets the creation time of the transaction. A that contains the creation time of the transaction. Gets a unique identifier of the escalated transaction. A that contains the unique identifier of the escalated transaction. Gets a unique identifier of the transaction. A unique identifier of the transaction. Gets the status of the transaction. A that contains the status of the transaction. Facilitates interaction between and components that were previously written to interact with MSDTC, COM+, or . This class cannot be inherited. Gets an instance that represents a .   An instance that represents a .  The instance is compatible with the unmanaged form of ITransaction used by MSDTC and with the Managed form of used by . A instance to be marshaled. Transforms a transaction object into an export transaction cookie. An export transaction cookie representing the specified object. The object to be marshaled. An address that describes the location of the destination transaction manager. This permits two transaction managers to communicate with one another and thereby propagate a transaction from one system to the other. Generates a from a specified . A instance that represents the given . The object to be marshaled. Generates a from the specified an export cookie.   A from the specified export cookie. A marshaled form of the transaction object. Generates a instance from the specified transmitter propagation token.  A from the specified transmitter propagation token. A propagation token representing a transaction. The deserialization of a transaction fails because the transaction manager cannot be contacted. This may be caused by network firewall or security settings. Generates a propagation token for the specified . This method, together with the method, provide functionality for Transmitter/Receiver propagation, in which the transaction is "pulled" from the remote machine when the latter is called to unmarshal the transaction. For more information on different propagation models, see the Remarks section of the class. A transaction to be marshaled into a propagation token. Gets the Whereabouts of the distributed transaction manager that uses.   The Whereabouts of the distributed transaction manager that uses.   Contains methods used for transaction management. This class cannot be inherited. Gets the default timeout interval for new transactions. A value that specifies the timeout interval for new transactions. Indicates that a distributed transaction has started. Gets or sets a custom transaction factory. A that contains a custom transaction factory. Gets the default maximum timeout interval for new transactions. A value that specifies the maximum timeout interval that is allowed when creating new transactions. Notifies the transaction manager that a resource manager recovering from failure has finished reenlisting in all unresolved transactions. A that uniquely identifies the resource to be recovered from. The parameter is null. Reenlists a durable participant in a transaction. An that describes the enlistment. A that uniquely identifies the resource manager. Contains additional information of recovery information. A resource object that implements to receive notifications. is invalid.-or-Transaction Manager information in does not match the configured transaction manager.-or- is not recognized by . has already been called for the specified . The reenlistment is rejected. The does not match the content of the specified recovery information in . The exception that is thrown when a resource manager cannot communicate with the transaction manager. Initializes a new instance of the class. Initializes a new instance of the class with the specified serialization and streaming context information. A object that describes a failed serialization. A object that describes a failed serialization context. Initializes a new instance of the class with the specified message. A that contains a message that explains why the exception occurred. Initializes a new instance of the class with the specified message and inner exception. A that contains a message that explains why the exception occurred. Gets the exception instance that causes the current exception. For more information, see the property. Contains additional information that specifies transaction behaviors. Determines whether this instance and the specified object are equal. true if and this instance are identical; otherwise, false. The object to compare with this instance. Returns the hash code for this instance. A 32-bit signed integer hash code. Gets or sets the isolation level of the transaction. A enumeration that specifies the isolation level of the transaction. Tests whether two specified instances are equivalent. true if and are equal; otherwise, false. The instance that is to the left of the equality operator. The instance that is to the right of the equality operator. Returns a value that indicates whether two instances are not equal. true if and are not equal; otherwise, false. The instance that is to the left of the equality operator. The instance that is to the right of the equality operator. Gets or sets the timeout period for the transaction. A value that specifies the timeout period for the transaction. The exception that is thrown when a promotion fails. Initializes a new instance of the class. Initializes a new instance of the class with the specified serialization and streaming context information. A object that describes a failed serialization. A object that describes a failed serialization context. Initializes a new instance of the class with the specified message. A that contains a message that explains why the exception occurred. Initializes a new instance of the class with the specified message and inner exception. A that contains a message that explains why the exception occurred. Gets the exception instance that causes the current exception. For more information, see the property. Makes a code block transactional. This class cannot be inherited. Initializes a new instance of the class. Initializes a new instance of the class and sets the specified transaction as the ambient transaction, so that transactional work done inside the scope uses this transaction. The transaction to be set as the ambient transaction, so that transactional work done inside the scope uses this transaction. Initializes a new instance of the class with the specified timeout value, and sets the specified transaction as the ambient transaction, so that transactional work done inside the scope uses this transaction. The transaction to be set as the ambient transaction, so that transactional work done inside the scope uses this transaction. The after which the transaction scope times out and aborts the transaction. Initializes a new instance of the class with the specified timeout value and COM+ interoperability requirements, and sets the specified transaction as the ambient transaction, so that transactional work done inside the scope uses this transaction. The transaction to be set as the ambient transaction, so that transactional work done inside the scope uses this transaction. The after which the transaction scope times out and aborts the transaction. An instance of the enumeration that describes how the associated transaction interacts with COM+ transactions. Initializes a new instance of the class with the specified requirements. An instance of the enumeration that describes the transaction requirements associated with this transaction scope. Initializes a new instance of the class with the specified timeout value and requirements. An instance of the enumeration that describes the transaction requirements associated with this transaction scope. The after which the transaction scope times out and aborts the transaction. Initializes a new instance of the class with the specified requirements. An instance of the enumeration that describes the transaction requirements associated with this transaction scope. A structure that describes the transaction options to use if a new transaction is created. If an existing transaction is used, the timeout value in this parameter applies to the transaction scope. If that time expires before the scope is disposed, the transaction is aborted. Initializes a new instance of the class with the specified scope and COM+ interoperability requirements, and transaction options. An instance of the enumeration that describes the transaction requirements associated with this transaction scope. A structure that describes the transaction options to use if a new transaction is created. If an existing transaction is used, the timeout value in this parameter applies to the transaction scope. If that time expires before the scope is disposed, the transaction is aborted. An instance of the enumeration that describes how the associated transaction interacts with COM+ transactions. Indicates that all operations within the scope are completed successfully. This method has already been called once. Ends the transaction scope. Provides additional options for creating a transaction scope. A transaction is required by the scope. It uses an ambient transaction if one already exists. Otherwise, it creates a new transaction before entering the scope. This is the default value. A new transaction is always created for the scope. The ambient transaction context is suppressed when creating the scope. All operations within the scope are done without an ambient transaction context. Represents the method that will handle the event of a class. The source of the event. The that contains the transaction from which transaction information can be retrieved. Describes the current status of a distributed transaction. The status of the transaction is unknown, because some participants must still be polled. The transaction has been committed. The transaction has been rolled back. The status of the transaction is unknown. Represents an XML section in a configuration file that contains default values of a transaction. This class cannot be inherited. Initializes a new instance of the class. Gets the name of the transaction manager. The name of the transaction manager. The default value is an empty string. An attempt to set this property to fully qualified domain names or IP addresses. An attempt to set this property to localhost. Gets or sets a default time after which a transaction times out. A object. The default property is 00:01:00. An attempt to set this property to negative values. Represents an XML section in a configuration file encapsulating all settings that can be modified only at the machine level. This class cannot be inherited. Initializes a new instance of the class. Gets a maximum amount of time allowed before a transaction times out. A object that contains the maximum allowable time. The default value is 00:10:00. An attempt to set this property to negative values. Represents a configuration section that encapsulates and allows traversal of all the transaction configuration XML elements and attributes that are within this configuration section. This class cannot be inherited. Initializes a new instance of the class. Gets the default settings used to initialize the elements and attributes in a transactions section. A that represents the default settings. The default is a that is populated with default values. Provides static access to a . A object. A representing the configuration settings that apply to a particular computer, application, or resource. Gets the configuration settings set at the machine level. A that represents the configuration settings at the machine level. The default is a that is populated with default values.