Freigeben über


ChannelDispatcherBase.Detach(ServiceHostBase) Methode

Definition

Trennt beim Überschreiben in einer abgeleiteten Klasse den Kanalverteiler von einem bestimmten Host.

protected:
 virtual void Detach(System::ServiceModel::ServiceHostBase ^ host);
protected virtual void Detach (System.ServiceModel.ServiceHostBase host);
abstract member Detach : System.ServiceModel.ServiceHostBase -> unit
override this.Detach : System.ServiceModel.ServiceHostBase -> unit
Protected Overridable Sub Detach (host As ServiceHostBase)

Parameter

Ausnahmen

host ist null.

Das Kommunikationsobjekt ist in einem Opening-Zustand oder in einem Opened-Zustand, oder der Host ist bereits festgelegt.

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

Das Kommunikationsobjekt befindet sich in einem Faulted-Zustand.

Hinweise

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

Sollte für die dem Kanalverteiler zugeordnete ServiceHostBase den Wert null festlegen.

ServiceHost ruft diese Methode auf, wenn die ChannelDispatcherBase aus der ChannelDispatchers-Auflistung entfernt wird. Dies gibt der ChannelDispatcherBase die Möglichkeit, die Verknüpfung der Ereignisse aufzuheben und den ServiceHost zu überprüfen.

Gilt für: