IOutputChannel.Send Método

Definição

Envia uma mensagem no canal de saída atual.

Sobrecargas

Name Description
Send(Message)

Transmite uma mensagem para o destino do canal de saída.

Send(Message, TimeSpan)

Envia uma mensagem no canal de saída atual dentro de um intervalo de tempo especificado.

Send(Message)

Origem:
IOutputChannel.cs
Origem:
IOutputChannel.cs
Origem:
IOutputChannel.cs

Transmite uma mensagem para o destino do canal de saída.

public:
 void Send(System::ServiceModel::Channels::Message ^ message);
public void Send(System.ServiceModel.Channels.Message message);
abstract member Send : System.ServiceModel.Channels.Message -> unit
Public Sub Send (message As Message)

Parâmetros

message
Message

O Message ser enviado para o canal de saída.

Exemplos

O seguinte código ilustra como implementar este método:

public IAsyncResult BeginTryReceiveRequest(TimeSpan timeout, AsyncCallback callback, object state)
{
    TryReceiveRequestAsyncResult result = new TryReceiveRequestAsyncResult(this, timeout, callback, state);
    result.Begin();
    return result;
}

Observações

O destino para mensagens enviadas num canal de saída é especificado na altura da criação do canal.

O Send método não garante a entrega da mensagem ao endpoint remoto. Uma implementação de IOutputChannel pode deixar mensagens silenciosamente descartadas por várias razões. Por exemplo, pode não haver mais espaço para tampão. Se forem necessárias garantias de entrega, use IOutputSessionChannel.

Passar a mensagem para o canal de saída faz com que a mensagem seja consumida. Depois de ligar Send, já não pode inspecionar a mensagem nem ligar Close sobre a mensagem.

Aplica-se a

Send(Message, TimeSpan)

Origem:
IOutputChannel.cs
Origem:
IOutputChannel.cs
Origem:
IOutputChannel.cs

Envia uma mensagem no canal de saída atual dentro de um intervalo de tempo especificado.

public:
 void Send(System::ServiceModel::Channels::Message ^ message, TimeSpan timeout);
public void Send(System.ServiceModel.Channels.Message message, TimeSpan timeout);
abstract member Send : System.ServiceModel.Channels.Message * TimeSpan -> unit
Public Sub Send (message As Message, timeout As TimeSpan)

Parâmetros

message
Message

O Message ser enviado para o canal de saída.

timeout
TimeSpan

Isso TimeSpan especifica quanto tempo a operação de envio tem de ser concluída antes de expirar.

Exemplos

O seguinte código ilustra como implementar este método:

public bool EndTryReceiveRequest(IAsyncResult result, out RequestContext requestContext)
{
    return TryReceiveRequestAsyncResult.End(result, out requestContext);
}

Observações

O destino para mensagens enviadas num canal de saída é especificado na altura da criação do canal.

O Send método não garante a entrega da mensagem ao endpoint remoto. Uma implementação de IOutputChannel pode deixar mensagens silenciosamente descartadas por várias razões. Por exemplo, pode não haver mais espaço para tampão. Se forem necessárias garantias de entrega, use IOutputSessionChannel.

Passar a mensagem para o canal de saída faz com que a mensagem seja consumida. Depois de ligar Send, já não pode inspecionar a mensagem nem ligar Close sobre a mensagem.

Notas para Implementadores

A operação deve lançar a TimeoutException se o especificado timeout for excedido.

Aplica-se a