DtsContainer.IsolationLevel Property

Gets or sets the isolation level of the transaction in the DtsContainer object.

Namespace:  Microsoft.SqlServer.Dts.Runtime
Assembly:  Microsoft.SqlServer.ManagedDTS (in Microsoft.SqlServer.ManagedDTS.dll)

public IsolationLevel IsolationLevel { get; set; }

Property Value

Type: System.Data.IsolationLevel
An integer value that corresponds to the isolation level.

The default value of this property is -1, or Unspecified. For more information about isolation levels, see Isolation Levels in the Database Engine. For more information about the available values, see the IsolationLevel enumerations that are used in the System.Data namespace, in ADO and in OLE DB.

The following table lists the values that are available for the IsolationLevel property.


Isolation Level













The value of the IsolationLevel property requested by a child container is ignored when the following conditions are true:

  • The value of the child container's TransactionOption property is Supported.

  • The child container joins the transaction of a parent container.

The value of the IsolationLevel property requested by the container is respected only when the container initiates a new transaction. A container initiates a new transaction when the following conditions are true:

  • The value of the container's TransactionOption property is Required.

  • The parent has not already started a transaction.

The following code example creates a Package, which is a class that inherits from DtsContainer. The Package shows the use of several inherited properties.

using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Dts.Runtime;

namespace Microsoft.SqlServer.SSIS.Samples
    class Program
        static void Main(string[] args)
            Application app = new Application();
            Package pkg = new Package();

            // Package name must be assigned.
            pkg.Name = "My DtsContainer inheritance test package";

            // Display the values that manually assigned.
            Console.WriteLine("Package Name: {0}", pkg.Name);

            // Packages are assigned the following default values when created.
            Console.WriteLine("Package ID:           {0}", pkg.ID);
            Console.WriteLine("FailPackageOnFailure: {0}", pkg.FailPackageOnFailure);
            Console.WriteLine("FailParentOnFailure:  {0}", pkg.FailParentOnFailure);
            Console.WriteLine("Locale ID:            {0}", pkg.LocaleID);
            Console.WriteLine("Is DefaultLocaleID?   {0}", pkg.IsDefaultLocaleID);
            Console.WriteLine("Isolation Level:      {0}", pkg.IsolationLevel);
            Console.WriteLine("LoggingMode:          {0}", pkg.LoggingMode);
            Console.WriteLine("MaximumErrorCount:    {0}", pkg.MaximumErrorCount);
            Console.WriteLine("TransactionOption:    {0}", pkg.TransactionOption);

Sample Output:

Package Name: My DtsContainer inheritance test package

Package ID: {2C2FAA96-35BA-4C5E-A39A-C5D7D30A0D79}

FailPackageOnFailure: False

FailParentOnFailure: False

Locale ID: 1033

Is DefaultLocaleID? False

Isolation Level: Serializable

LoggingMode: UseParentSetting

MaximumErrorCount: 1

TransactionOption: Supported

Community Additions