ChannelDispatcher.TransactionIsolationLevel Property

 
System_CAPS_noteNote

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Gets or sets the default isolation level for transactions.

Namespace:   System.ServiceModel.Dispatcher
Assembly:  System.ServiceModel (in System.ServiceModel.dll)

public IsolationLevel TransactionIsolationLevel { get; set; }

Property Value

Type: System.Transactions.IsolationLevel

One of the IsolationLevel values. The default is Unspecified.

Exception Condition
ArgumentOutOfRangeException

The isolation level set is not defined.

InvalidOperationException

The communication object is in an Opening or Opened state.

ObjectDisposedException

The communication object is in a Closing or Closed state.

CommunicationObjectFaultedException

The communication object is in a Faulted state.

Use the TransactionIsolationLevel property to get or set the default isolation level for new transactions created by the dispatcher for the service.

This property can only be set when the instance of the ChannelDispatcher is in the Created state, as this is the only state that is both mutable and not disposed.

Uri baseAddress = new Uri("http://localhost:8001/Simple");
ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService), baseAddress);

serviceHost.AddServiceEndpoint(
    typeof(ICalculator),
    new WSHttpBinding(),
    "CalculatorServiceObject");

serviceHost.Open();

IChannelListener icl = serviceHost.ChannelDispatchers[0].Listener;
ChannelDispatcher dispatcher = new ChannelDispatcher(icl);
dispatcher.TransactionIsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;            

.NET Framework
Available since 3.0
Return to top
Show: