IOutputChannel.Send Método

Definición

Envía un mensaje en el canal de salida actual.

Sobrecargas

Nombre Description
Send(Message)

Transmite un mensaje al destino del canal de salida.

Send(Message, TimeSpan)

Envía un mensaje en el canal de salida actual dentro de un intervalo de tiempo especificado.

Send(Message)

Source:
IOutputChannel.cs
Source:
IOutputChannel.cs
Source:
IOutputChannel.cs

Transmite un mensaje al destino del canal de salida.

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

Que Message se envía en el canal de salida.

Ejemplos

En el código siguiente se muestra cómo 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;
}

Comentarios

El destino de los mensajes enviados en un canal de salida se especifica en el momento de la creación del canal.

El Send método no garantiza la entrega del mensaje al punto de conexión remoto. Una implementación de IOutputChannel puede quitar mensajes de forma silenciosa por diversos motivos. Puede que no haya más espacio de búfer, por ejemplo. Si se requieren garantías de entrega, use IOutputSessionChannel.

Pasar el mensaje al canal de salida hace que se consuma el mensaje. Después de llamar a Send, ya no puede inspeccionar el mensaje ni llamar Close al mensaje.

Se aplica a

Send(Message, TimeSpan)

Source:
IOutputChannel.cs
Source:
IOutputChannel.cs
Source:
IOutputChannel.cs

Envía un mensaje en el canal de salida actual dentro de un intervalo de tiempo 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

Que Message se envía en el canal de salida.

timeout
TimeSpan

TimeSpan que especifica cuánto tiempo debe completarse la operación de envío antes de que se agote el tiempo de espera.

Ejemplos

En el código siguiente se muestra cómo implementar este método:

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

Comentarios

El destino de los mensajes enviados en un canal de salida se especifica en el momento de la creación del canal.

El Send método no garantiza la entrega del mensaje al punto de conexión remoto. Una implementación de IOutputChannel puede quitar mensajes de forma silenciosa por diversos motivos. Puede que no haya más espacio de búfer, por ejemplo. Si se requieren garantías de entrega, use IOutputSessionChannel.

Pasar el mensaje al canal de salida hace que se consuma el mensaje. Después de llamar a Send, ya no puede inspeccionar el mensaje ni llamar Close al mensaje.

Notas a los implementadores

La operación debe iniciar un TimeoutException si se supera el especificado timeout .

Se aplica a