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
Значение свойства
Значение true
, если диспетчер использует синхронные методы для чтения сообщений из каналов; в противном случае — значение false
. Значение по умолчанию — false
.
Исключения
Объект связи находится в состоянии 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, так как это единственное состояние, которое одновременно является изменяемым и не удаляется.