ChannelDispatcherBase.Detach(ServiceHostBase) 方法

定義

在衍生類別中覆寫時,從特定主機中斷通道發送器的連結。

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)

參數

例外狀況

hostnull

通訊物件處於 OpeningOpened 狀態中,或是主機已設定。

通訊物件處於 ClosingClosed 狀態中。

通訊物件處於 Faulted 狀態中。

備註

ServiceHostBase 只有在 ChannelDispatcher 的執行個體處於 Created 狀態時才可以進行中斷,因為這是唯一同時處於可變動且尚未處置的狀態。

應該將與通道發送器相關聯的 ServiceHostBase 設定為 null

ServiceHost 會在 ChannelDispatcherBase 已自其 ChannelDispatchers 集合中移除時呼叫這個方法。 這讓 ChannelDispatcherBase 有機會取消攔截 (Unhook) 事件和檢查 ServiceHost

適用於