Partilhar via


IInstanceContextProvider Interface

Definição

Implemente para participar da criação ou escolha de um InstanceContext objeto, especialmente para habilitar sessões compartilhadas.

public interface class IInstanceContextProvider
public interface IInstanceContextProvider
type IInstanceContextProvider = interface
Public Interface IInstanceContextProvider

Comentários

Implemente a IInstanceContextProvider interface para fornecer o objeto apropriado System.ServiceModel.InstanceContext ao sistema. Normalmente, essa interface é implementada para dar suporte a sessões compartilhadas, habilitar o pool de instâncias de serviço, controlar tempos de vida de instâncias de serviço ou agrupar contextos entre clientes.

Por exemplo, para implementar o compartilhamento, insira um personalizado IInstanceContextProvider para decidir qual sessão ou chamada de um cliente está associada a qual InstanceContext objeto. Para obter um exemplo que demonstra o compartilhamento de contextos de instância, consulte InstanceContextSharing.

Observação

Quando um IInstanceContextProvider é inserido no WCF (Windows Communication Foundation), a propriedade normal que controla a criação de InstanceContext objetos (a ServiceBehaviorAttribute.InstanceContextMode propriedade) não é mais verificada e não tem efeito.

Um mecanismo mais genérico pelo qual você pode inicializar InstanceContext objetos quando criado (por exemplo, para anexar extensões personalizadas a cada InstanceContext) é o System.ServiceModel.Dispatcher.IInstanceContextInitializer.

Métodos

Nome Description
GetExistingInstanceContext(Message, IContextChannel)

Chamado quando uma nova mensagem é recebida.

InitializeInstanceContext(InstanceContext, Message, IContextChannel)

Chamado quando null é retornado do GetExistingInstanceContext(Message, IContextChannel) método.

IsIdle(InstanceContext)

Chamado quando todas as InstanceContext atividades tiverem sido concluídas para permitir que os implementadores impeçam que eles InstanceContext sejam reciclados.

NotifyIdle(InstanceContextIdleCallback, InstanceContext)

Chamado quando o IsIdle(InstanceContext) método retorna false para habilitar os implementadores a fornecer um retorno de chamada para notificar o WCF quando o InstanceContext objeto for concluído.

Aplica-se a