InstanceContext.GetServiceInstance Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Devuelve la instancia del servicio.
Sobrecargas
GetServiceInstance() |
Devuelve la instancia del servicio para el contexto de la instancia. |
GetServiceInstance(Message) |
Devuelve la instancia del servicio para el contexto de la instancia como respuesta a un mensaje entrante. |
GetServiceInstance()
Devuelve la instancia del servicio para el contexto de la instancia.
public:
System::Object ^ GetServiceInstance();
public object GetServiceInstance ();
member this.GetServiceInstance : unit -> obj
Public Function GetServiceInstance () As Object
Devoluciones
El objeto que representa la instancia del servicio.
Excepciones
La instancia del servicio está en un estado creado o abierto o no se inicializó.
Se anuló la instancia del servicio.
La instancia del servicio se ha cerrado ya y no puede modificarse en estos estados.
La instancia del servicio está en estado de error y no puede modificarse en estos estados.
Ejemplos
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();
}
Se aplica a
GetServiceInstance(Message)
Devuelve la instancia del servicio para el contexto de la instancia como respuesta a un mensaje entrante.
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
Parámetros
- message
- Message
El mensaje entrante que activó la creación de un objeto de servicio.
Devoluciones
El objeto que representa la instancia del servicio.
Excepciones
La instancia del servicio está en un estado creado o abierto o no se inicializó.
Se anuló la instancia del servicio.
La instancia del servicio se ha cerrado ya y no puede modificarse en estos estados.
La instancia del servicio está en estado de error y no puede modificarse en estos estados.
Ejemplos
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);
}
Comentarios
La idea general es que sólo cree una instancia del servicio cuando llega un mensaje dirigido a él llamando Open. A continuación, si no llega ningún mensaje, no se crea ningún InstanceContext ni tampoco se creará ningún objeto de servicio. Por tanto, los recursos no se implementarán hasta que sean realmente necesarios.