Partager via


IOutputChannel.Send Méthode

Définition

Envoie un message sur le canal de sortie actuel.

Surcharges

Send(Message)

Transmet un message à la destination du canal de sortie.

Send(Message, TimeSpan)

Envoie un message sur le canal de sortie actuel dans un intervalle de temps spécifié.

Send(Message)

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

Transmet un message à la destination du canal de sortie.

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)

Paramètres

message
Message

Message qui est envoyé sur le canal de sortie.

Exemples

Le code suivant illustre comment implémenter cette méthode :

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

Remarques

La destination des messages envoyés sur un canal de sortie est spécifiée au moment de la création du canal.

La méthode Send ne garantit pas la remise d'un message au point de terminaison distant. Une implémentation de IOutputChannel peut supprimer silencieusement des messages pour diverses raisons. Il peut ne plus y avoir d'espace de mémoire tampon, par exemple. Si les garanties de remise sont requises, utilisez IOutputSessionChannel.

Le passage du message dans le canal de sortie entraîne la consommation du message. Après avoir appelé Send, vous ne pouvez plus inspecter le message ou appeler Close sur le message.

S’applique à

Send(Message, TimeSpan)

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

Envoie un message sur le canal de sortie actuel dans un intervalle de temps spécifié.

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)

Paramètres

message
Message

Message qui est envoyé sur le canal de sortie.

timeout
TimeSpan

TimeSpan qui spécifie le délai d'exécution de l'opération d'envoi avant dépassement du délai d'attente.

Exemples

Le code suivant illustre comment implémenter cette méthode :

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

Remarques

La destination des messages envoyés sur un canal de sortie est spécifiée au moment de la création du canal.

La méthode Send ne garantit pas la remise d'un message au point de terminaison distant. Une implémentation de IOutputChannel peut supprimer silencieusement des messages pour diverses raisons. Il peut ne plus y avoir d'espace de mémoire tampon, par exemple. Si les garanties de remise sont requises, utilisez IOutputSessionChannel.

Le passage du message dans le canal de sortie entraîne la consommation du message. Après avoir appelé Send, vous ne pouvez plus inspecter le message ou appeler Close sur le message.

Notes pour les responsables de l’implémentation

L'opération doit lever une TimeoutException si le timeout spécifié est dépassé.

S’applique à