ChannelDispatcher.ReceiveSynchronously Property

Definition

Gets or sets a value that specifies whether the dispatcher uses synchronous calls to read messages from channels.

C#
public bool ReceiveSynchronously { get; set; }

Property Value

true if the dispatcher uses synchronous methods to read messages from channels; otherwise, false. The default is false.

Exceptions

The communication object is in an Opening or Opened state.

The communication object is in a Closing or Closed state.

The communication object is in a Faulted state.

Examples

C#
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);
bool receiveSynchronously = dispatcher.ReceiveSynchronously;

Remarks

If a binding implements IBindingRuntimePreferences, Windows Communication Foundation (WCF) assigns the value of the ReceiveSynchronously property to this property. So if this value is true, the false default value of ReceiveSynchronously is overridden.

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.

Applies to

Product Versions
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1