System.EnterpriseServices N ...


.NET Framework Class Library
TransactionOption Enumeration

Specifies the automatic transaction type requested by the component.

Namespace:  System.EnterpriseServices
Assembly:  System.EnterpriseServices (in System.EnterpriseServices.dll)
Syntax

Visual Basic (Declaration)
<SerializableAttribute> _
Public Enumeration TransactionOption
Visual Basic (Usage)
Dim instance As TransactionOption
C#
[SerializableAttribute]
public enum TransactionOption
Visual C++
[SerializableAttribute]
public enum class TransactionOption
JScript
public enum TransactionOption
Members

Member nameDescription
DisabledIgnores any transaction in the current context.
NotSupportedCreates the component in a context with no governing transaction.
SupportedShares a transaction, if one exists.
RequiredShares a transaction, if one exists, and creates a new transaction if necessary.
RequiresNewCreates the component with a new transaction, regardless of the state of the current context.
Remarks

When using the .NET Installation Tool (Regsvcs.exe), the transaction option for a ServicedComponent defaults to Disabled.

Examples

The following code example demonstrates the use of the TransactionOption type.

Visual Basic
Imports System
Imports System.EnterpriseServices
Imports System.Reflection


' References:
' System.EnterpriseServices

' An instance of this class will not participate in transactions, but can
' share its caller's context even if its caller is configured as
' NotSupported, Supported, Required, or RequiresNew.
<Transaction(TransactionOption.Disabled)>  _
Public Class TransactionAttribute_TransactionDisabled
    Inherits ServicedComponent
End Class 'TransactionAttribute_TransactionDisabled

' An instance of this class will not participate in transactions, and will
' share its caller's context only if its caller is also configured as
' NotSupported.
<Transaction(TransactionOption.NotSupported)>  _
Public Class TransactionAttribute_TransactionNotSupported
    Inherits ServicedComponent
End Class 'TransactionAttribute_TransactionNotSupported

' An instance of this class will participate in its caller's transaction
' if one exists.
<Transaction(TransactionOption.Supported)>  _
Public Class TransactionAttribute_TransactionSupported
    Inherits ServicedComponent
End Class 'TransactionAttribute_TransactionSupported

' An instance of this class will participate in its caller's transaction
' if one exists. If not, a new transaction will be created for it.
<Transaction(TransactionOption.Required)>  _
Public Class TransactionAttribute_TransactionRequired
    Inherits ServicedComponent
End Class 'TransactionAttribute_TransactionRequired

' A new transaction will always be created for an instance of this class.
<Transaction(TransactionOption.RequiresNew)>  _
Public Class TransactionAttribute_TransactionRequiresNew
    Inherits ServicedComponent
End Class 'TransactionAttribute_TransactionRequiresNew
C#
using System;
using System.EnterpriseServices;
using System.Reflection;

// References:
// System.EnterpriseServices

// An instance of this class will not participate in transactions, but can
// share its caller's context even if its caller is configured as
// NotSupported, Supported, Required, or RequiresNew.
[Transaction(TransactionOption.Disabled)]
public class TransactionAttribute_TransactionDisabled : ServicedComponent
{
}

// An instance of this class will not participate in transactions, and will
// share its caller's context only if its caller is also configured as
// NotSupported.
[Transaction(TransactionOption.NotSupported)]
public class TransactionAttribute_TransactionNotSupported : ServicedComponent
{
}

// An instance of this class will participate in its caller's transaction
// if one exists.
[Transaction(TransactionOption.Supported)]
public class TransactionAttribute_TransactionSupported : ServicedComponent
{
}

// An instance of this class will participate in its caller's transaction
// if one exists. If not, a new transaction will be created for it.
[Transaction(TransactionOption.Required)]
public class TransactionAttribute_TransactionRequired : ServicedComponent
{
}

// A new transaction will always be created for an instance of this class.
[Transaction(TransactionOption.RequiresNew)]
public class TransactionAttribute_TransactionRequiresNew : ServicedComponent
{
}
Visual C++
#using <System.EnterpriseServices.dll>

using namespace System;
using namespace System::EnterpriseServices;
using namespace System::Reflection;

// References:
// System.EnterpriseServices

// An instance of this class will not participate in transactions, but can
// share its caller's context even if its caller is configured as
// NotSupported, Supported, Required, or RequiresNew.
[Transaction(TransactionOption::Disabled)]
public ref class TransactionDisabled : public ServicedComponent
{
};

// An instance of this class will not participate in transactions, and will
// share its caller's context only if its caller is also configured as
// NotSupported.
[Transaction(TransactionOption::NotSupported)]
public ref class TransactionNotSupported : public ServicedComponent
{
};

// An instance of this class will participate in its caller's transaction
// if one exists.
[Transaction(TransactionOption::Supported)]
public ref class TransactionSupported : public ServicedComponent
{
};

// An instance of this class will participate in its caller's transaction
// if one exists. If not, a new transaction will be created for it.
[Transaction(TransactionOption::Required)]
public ref class TransactionRequired : public ServicedComponent
{
};

// A new transaction will always be created for an instance of this class.
[Transaction(TransactionOption::RequiresNew)]
public ref class TransactionRequiresNew : public ServicedComponent
{
};
Platforms

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Version Information

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0
See Also

Reference

Tags :


Page view tracker