ChannelDispatcher.ReceiveSynchronously Свойство

Определение

Возвращает или задает значение, указывающее, использует ли диспетчер синхронные вызовы для чтения сообщений из каналов.

public:
 property bool ReceiveSynchronously { bool get(); void set(bool value); };
public bool ReceiveSynchronously { get; set; }
member this.ReceiveSynchronously : bool with get, set
Public Property ReceiveSynchronously As Boolean

Значение свойства

Boolean

Значение true, если диспетчер использует синхронные методы для чтения сообщений из каналов; в противном случае — значение false. Значение по умолчанию — false.

Исключения

Объект связи находится в состоянии Opening или Opened.

Объект связи находится в состоянии Closing или Closed.

Объект связи находится в состоянии Faulted.

Примеры

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;
Dim baseAddress As New Uri("http://localhost:8001/Simple")
Dim serviceHost As New ServiceHost(GetType(CalculatorService), baseAddress)

serviceHost.AddServiceEndpoint(GetType(ICalculator), New WSHttpBinding(), "CalculatorServiceObject")

serviceHost.Open()

Dim icl As IChannelListener = serviceHost.ChannelDispatchers(0).Listener
Dim dispatcher As New ChannelDispatcher(icl)
Dim receiveSynchronously As Boolean = dispatcher.ReceiveSynchronously

Комментарии

Если привязка реализуетсяIBindingRuntimePreferences, Windows Communication Foundation (WCF) присваивает этому свойству значение ReceiveSynchronously свойства. Поэтому, если это значение true, то значение по умолчанию false свойства ReceiveSynchronously переопределяется.

Установка данного свойства возможна, только когда экземпляр класса ChannelDispatcher находится в состоянии Created, так как это единственное состояние, которое одновременно является изменяемым и не удаляется.

Применяется к