InstanceContext.GetServiceInstance 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.
Zwraca wystąpienie usługi.
Przeciążenia
GetServiceInstance() |
Zwraca wystąpienie usługi dla kontekstu wystąpienia. |
GetServiceInstance(Message) |
Zwraca wystąpienie usługi dla kontekstu wystąpienia w odpowiedzi na przychodzący komunikat. |
GetServiceInstance()
Zwraca wystąpienie usługi dla kontekstu wystąpienia.
public:
System::Object ^ GetServiceInstance();
public object GetServiceInstance ();
member this.GetServiceInstance : unit -> obj
Public Function GetServiceInstance () As Object
Zwraca
Obiekt reprezentujący wystąpienie usługi.
Wyjątki
Wystąpienie usługi jest w stanie tworzenia lub otwierania lub nie jest inicjowane.
Wystąpienie usługi zostało przerwane.
Wystąpienie usługi zostało już zamknięte i nie można go modyfikować w tych stanach.
Wystąpienie usługi jest uszkodzone i nie można go modyfikować w tych stanach.
Przykłady
Uri baseAddress = new Uri("http://localhost:8000/ServiceModelSamples/service");
// Create a ServiceHost for the CalculatorService type and provide the base address.
using (ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService), baseAddress))
{
serviceHost.Open();
OperationContext operationContext = OperationContext.Current;
InstanceContext instanceContext = operationContext.InstanceContext;
CalculatorService service = (CalculatorService) instanceContext.GetServiceInstance();
}
Dotyczy
GetServiceInstance(Message)
Zwraca wystąpienie usługi dla kontekstu wystąpienia w odpowiedzi na przychodzący komunikat.
public:
System::Object ^ GetServiceInstance(System::ServiceModel::Channels::Message ^ message);
public object GetServiceInstance (System.ServiceModel.Channels.Message message);
member this.GetServiceInstance : System.ServiceModel.Channels.Message -> obj
Public Function GetServiceInstance (message As Message) As Object
Parametry
- message
- Message
Przychodzący komunikat, który wyzwolił utworzenie obiektu usługi.
Zwraca
Obiekt reprezentujący wystąpienie usługi.
Wyjątki
Wystąpienie usługi jest w stanie tworzenia lub otwierania lub nie jest inicjowane.
Wystąpienie usługi zostało przerwane.
Wystąpienie usługi zostało już zamknięte i nie można go modyfikować w tych stanach.
Wystąpienie usługi jest uszkodzone i nie można go modyfikować w tych stanach.
Przykłady
Uri baseAddress = new Uri("http://localhost:8000/ServiceModelSamples/service");
// Create a ServiceHost for the CalculatorService type and provide the base address.
using (ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService), baseAddress))
{
serviceHost.Open();
OperationContext operationContext = OperationContext.Current;
InstanceContext instanceContext = operationContext.InstanceContext;
CalculatorService service = (CalculatorService)instanceContext.GetServiceInstance(msg);
}
Uwagi
Ogólny pomysł polega na tym, że tworzysz tylko wystąpienie usługi po nadejściu komunikatu skierowanego do niego, wywołując metodę Open; jeśli żaden komunikat nie zostanie wyświetlony, nie InstanceContext zostanie utworzony i żaden obiekt usługi nie zostanie utworzony, a więc zasoby nie zostaną wdrożone do momentu rzeczywistego wymagania.