ChannelDispatcher.ReceiveSynchronously Eigenschaft

Definition

Ruft einen Wert ab oder legt diesen fest, der angibt, ob der Verteiler synchrone Aufrufe verwendet, um Nachrichten aus Kanälen zu lesen.

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

Eigenschaftswert

Boolean

true, wenn der Verteiler synchrone Methoden verwendet, um Nachrichten von Kanälen zu lesen, andernfalls false. Der Standardwert ist false.

Ausnahmen

Das Kommunikationsobjekt befindet sich in einem Opening-Zustand oder in einem Opened-Zustand.

Das Kommunikationsobjekt befindet sich in einem Closing-Zustand oder einem Closed-Zustand.

Das Kommunikationsobjekt befindet sich in einem Faulted-Zustand.

Beispiele

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

Hinweise

Wenn eine Bindung implementiert IBindingRuntimePreferenceswird, weist Windows Communication Foundation (WCF) den Wert der ReceiveSynchronously Eigenschaft dieser Eigenschaft zu. Wenn dieser Wert true ist, wird daher der false-Standardwert von ReceiveSynchronously überschrieben.

Diese Eigenschaft kann nur festgelegt werden, wenn die Instanz von ChannelDispatcher den Created-Zustand aufweist, da dies der einzige Zustand ist, der veränderbar ist und nicht verworfen wurde.

Gilt für