Partilhar via


IInputChannel Interface

Definição

Define a interface que um canal deve implementar para receber uma mensagem.

public interface class IInputChannel : System::ServiceModel::Channels::IChannel
public interface IInputChannel : System.ServiceModel.Channels.IChannel
type IInputChannel = interface
    interface IChannel
    interface ICommunicationObject
Public Interface IInputChannel
Implements IChannel
Derivado
Implementações

Comentários

Importante

Chamar métodos de classes que implementam esta interface quando você tiver dados não confiáveis é um risco à segurança. Chame os métodos de classes que implementam essa interface somente quando você tiver dados confiáveis. Para obter mais informações, consulte Validar todas as entradas.

O IInputChannel contrato inclui variantes síncronas e assíncronas de funcionalidades de recebimento, tentativa de recebimento e espera por mensagem.

O modelo de pull normalmente é usado com um IInputChannel para receber mensagens: você chama Receive (para "efetuar pull" de uma mensagem para fora do canal) e aguarda uma mensagem chegar. Um padrão de uso alternativo é chamar BeginWaitForMessage(TimeSpan, AsyncCallback, Object) ou BeginWaitForMessage(TimeSpan, AsyncCallback, Object)e, em seguida, chamar Receive(TimeSpan). Essa abordagem é comum para usos transacionais em que você inicia a transação entre as chamadas para WaitForMessage(TimeSpan) e Receive.

Um IInputChannel não está necessariamente associado a um único remetente. Outros canais e interfaces de canal podem fornecer uma correlação entre remetentes específicos e um IInputChannel, mas o contrato base não faz essa restrição. Uma implementação pode criar um novo IInputChannel para cada mensagem ou reutilizar o mesmo IInputChannel para várias mensagens e remetentes.

Propriedades

LocalAddress

Obtém o endereço no qual o canal de entrada recebe mensagens.

State

Obtém o estado atual do objeto voltado à comunicação.

(Herdado de ICommunicationObject)

Métodos

Abort()

Faz com que um objeto de comunicação faça a transição imediata do estado atual para o estado fechado.

(Herdado de ICommunicationObject)
BeginClose(AsyncCallback, Object)

Inicia uma operação assíncrona para fechar um objeto de comunicação.

(Herdado de ICommunicationObject)
BeginClose(TimeSpan, AsyncCallback, Object)

Inicia uma operação assíncrona para fechar um objeto de comunicação com um tempo limite especificado.

(Herdado de ICommunicationObject)
BeginOpen(AsyncCallback, Object)

Inicia uma operação assíncrona para abrir um objeto de comunicação.

(Herdado de ICommunicationObject)
BeginOpen(TimeSpan, AsyncCallback, Object)

Inicia uma operação assíncrona para abrir um objeto de comunicação dentro de um intervalo de tempo especificado.

(Herdado de ICommunicationObject)
BeginReceive(AsyncCallback, Object)

Inicia uma operação assíncrona para receber uma mensagem que tem um objeto de estado associado.

BeginReceive(TimeSpan, AsyncCallback, Object)

Inicia uma operação assíncrona para receber uma mensagem que tem um tempo limite e um objeto de estado especificados associados.

BeginTryReceive(TimeSpan, AsyncCallback, Object)

Inicia uma operação assíncrona para receber uma mensagem que tem um tempo limite e um objeto de estado especificados associados.

BeginWaitForMessage(TimeSpan, AsyncCallback, Object)

Inicia uma operação assíncrona para aguardar o recebimento de uma mensagem que tem um tempo limite e um objeto de estado especificados associados.

Close()

Faz com que um objeto de comunicação faça a transição do estado atual para o estado fechado.

(Herdado de ICommunicationObject)
Close(TimeSpan)

Faz com que um objeto de comunicação faça a transição do estado atual para o estado fechado.

(Herdado de ICommunicationObject)
EndClose(IAsyncResult)

Conclui uma operação assíncrona para fechar um objeto de comunicação.

(Herdado de ICommunicationObject)
EndOpen(IAsyncResult)

Conclui uma operação assíncrona para abrir um objeto de comunicação.

(Herdado de ICommunicationObject)
EndReceive(IAsyncResult)

Conclui uma operação assíncrona para receber uma mensagem.

EndTryReceive(IAsyncResult, Message)

Conclui a operação assíncrona especificada para receber uma mensagem.

EndWaitForMessage(IAsyncResult)

Conclui a operação assíncrona de especificada de aguardar uma mensagem.

GetProperty<T>()

Retorna um objeto tipado solicitado, se presente, da camada apropriada na pilha de canais.

(Herdado de IChannel)
Open()

Faz com que um objeto de comunicação faça a transição do estado criado para o estado aberto.

(Herdado de ICommunicationObject)
Open(TimeSpan)

Faz com que um objeto de comunicação faça a transição do estado criado para o estado aberto em um intervalo de tempo especificado.

(Herdado de ICommunicationObject)
Receive()

Retornará a mensagem recebida, se houver uma disponível. Se uma mensagem não estiver disponível, será bloqueado por um intervalo de tempo padrão.

Receive(TimeSpan)

Retornará a mensagem recebida, se houver uma disponível. Se uma mensagem não estiver disponível, será bloqueado por um intervalo de tempo especificado.

TryReceive(TimeSpan, Message)

Tentar receber uma mensagem dentro de um intervalo de tempo especificado.

WaitForMessage(TimeSpan)

Retorna um valor que indica se uma mensagem foi recebida dentro de um intervalo de tempo especificado.

Eventos

Closed

Ocorre quando o objeto de comunicação conclui sua transição do estado de fechamento para o estado fechado.

(Herdado de ICommunicationObject)
Closing

Ocorre quando um objeto de comunicação entra em estado de fechamento primeiro.

(Herdado de ICommunicationObject)
Faulted

Ocorre quando um objeto de comunicação entra em estado de falha primeiro.

(Herdado de ICommunicationObject)
Opened

Ocorre quando o objeto de comunicação conclui sua transição do estado de abertura para o estado aberto.

(Herdado de ICommunicationObject)
Opening

Ocorre quando um objeto de comunicação entra em estado de abertura primeiro.

(Herdado de ICommunicationObject)

Aplica-se a