InstanceContext.GetServiceInstance Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vrátí instanci služby.
Přetížení
| Name | Description |
|---|---|
| GetServiceInstance() |
Vrátí instanci služby pro kontext instance. |
| GetServiceInstance(Message) |
Vrátí instanci služby pro kontext instance v reakci na příchozí zprávu. |
GetServiceInstance()
Vrátí instanci služby pro kontext instance.
public:
System::Object ^ GetServiceInstance();
public object GetServiceInstance();
member this.GetServiceInstance : unit -> obj
Public Function GetServiceInstance () As Object
Návraty
Objekt, který představuje instanci služby.
Výjimky
Instance služby je ve stavu vytvoření nebo otevření nebo není inicializována.
Instance služby je přerušena.
Instance služby již byla uzavřena a v těchto stavech ji nelze změnit.
Instance služby je chybná a v těchto stavech ji nelze upravit.
Příklady
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();
}
Platí pro
GetServiceInstance(Message)
- Zdroj:
- InstanceContext.cs
- Zdroj:
- InstanceContext.cs
- Zdroj:
- InstanceContext.cs
Vrátí instanci služby pro kontext instance v reakci na příchozí zprávu.
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
Příchozí zpráva, která aktivovala vytvoření objektu služby.
Návraty
Objekt, který představuje instanci služby.
Výjimky
Instance služby je ve stavu vytvoření nebo otevření nebo není inicializována.
Instance služby je přerušena.
Instance služby již byla uzavřena a v těchto stavech ji nelze změnit.
Instance služby je chybná a v těchto stavech ji nelze upravit.
Příklady
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);
}
Poznámky
Obecnou myšlenkou je, že vytvoříte pouze instanci služby, když na ni přijde zpráva, zavoláním Open; pak pokud nepřirazí žádná zpráva, nevytvoří se a InstanceContext nevytvoří se žádný objekt služby, takže prostředky se nenasadí, dokud se skutečně nevyžaduje.