ChannelDispatcher.Detach(ServiceHostBase) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Odłącza hosta usługi od dyspozytora kanału.
protected:
override void Detach(System::ServiceModel::ServiceHostBase ^ host);
protected override void Detach (System.ServiceModel.ServiceHostBase host);
override this.Detach : System.ServiceModel.ServiceHostBase -> unit
Protected Overrides Sub Detach (host As ServiceHostBase)
Parametry
- host
- ServiceHostBase
Element ServiceHostBase dla usługi.
Wyjątki
host
to null
.
host
nie jest hostem dyspozytora kanału.
-lub-
Obiekt komunikacji jest w Faulted stanie.
Przykłady
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);
dispatcher.CloseInput();
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)
dispatcher.CloseInput()
Uwagi
Można ServiceHostBase je odłączyć tylko wtedy, gdy wystąpienie obiektu ChannelDispatcher znajduje się w Created stanie, ponieważ jest to jedyny stan, który jest zarówno modyfikowalny, jak i nie usuwany.
ServiceHostBase Ustawia skojarzony z dyspozytorem kanału wartość null
.