IOutputChannel.Send Método

Definição

Envia uma mensagem no canal de saída atual.

Sobrecargas

Nome 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 que está sendo enviado no canal de saída.

Exemplos

O código a seguir 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;
}

Comentários

O destino das mensagens enviadas em um canal de saída é especificado no momento da criação do canal.

O Send método não garante a entrega da mensagem para o ponto de extremidade remoto. Uma implementação de IOutputChannel pode remover mensagens silenciosamente por uma variedade de motivos. Pode não haver mais espaço de buffer, por exemplo. Se as garantias de entrega forem necessárias, use IOutputSessionChannel.

Passar a mensagem para o canal de saída faz com que a mensagem seja consumida. Depois de ligar Send, você não poderá mais inspecionar a mensagem ou chamar Close 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 que está sendo enviado no canal de saída.

timeout
TimeSpan

O TimeSpan que especifica quanto tempo a operação de envio precisa ser concluída antes do tempo limite.

Exemplos

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

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

Comentários

O destino das mensagens enviadas em um canal de saída é especificado no momento da criação do canal.

O Send método não garante a entrega da mensagem para o ponto de extremidade remoto. Uma implementação de IOutputChannel pode remover mensagens silenciosamente por uma variedade de motivos. Pode não haver mais espaço de buffer, por exemplo. Se as garantias de entrega forem necessárias, use IOutputSessionChannel.

Passar a mensagem para o canal de saída faz com que a mensagem seja consumida. Depois de ligar Send, você não poderá mais inspecionar a mensagem ou chamar Close a mensagem.

Notas aos Implementadores

A operação deve gerar um TimeoutException caso o especificado timeout seja excedido.

Aplica-se a