IOutputChannel.Send Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee wordt een bericht verzonden op het huidige uitvoerkanaal.
Overloads
| Name | Description |
|---|---|
| Send(Message) |
Hiermee wordt een bericht verzonden naar het doel van het uitvoerkanaal. |
| Send(Message, TimeSpan) |
Hiermee wordt een bericht verzonden op het huidige uitvoerkanaal binnen een opgegeven tijdsinterval. |
Send(Message)
Hiermee wordt een bericht verzonden naar het doel van het uitvoerkanaal.
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)
Parameters
Voorbeelden
De volgende code illustreert hoe u deze methode implementeert:
public IAsyncResult BeginTryReceiveRequest(TimeSpan timeout, AsyncCallback callback, object state)
{
TryReceiveRequestAsyncResult result = new TryReceiveRequestAsyncResult(this, timeout, callback, state);
result.Begin();
return result;
}
Opmerkingen
De bestemming voor berichten die op een uitvoerkanaal worden verzonden, wordt opgegeven tijdens het maken van het kanaal.
De Send methode biedt geen garantie voor de bezorging van een bericht naar het externe eindpunt. Een implementatie van IOutputChannel kan om verschillende redenen berichten op de achtergrond verwijderen. Er is bijvoorbeeld geen bufferruimte meer. Als leveringsgaranties vereist zijn, gebruikt u IOutputSessionChannel.
Als u het bericht doorgeeft aan het uitvoerkanaal, wordt het bericht verbruikt. Nadat u hebt gebeld Send, kunt u het bericht niet meer inspecteren of bellen Close op het bericht.
Van toepassing op
Send(Message, TimeSpan)
Hiermee wordt een bericht verzonden op het huidige uitvoerkanaal binnen een opgegeven tijdsinterval.
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)
Parameters
- timeout
- TimeSpan
Hiermee TimeSpan geeft u op hoe lang de verzendbewerking moet worden voltooid voordat er een time-out optreedt.
Voorbeelden
De volgende code illustreert hoe u deze methode implementeert:
public bool EndTryReceiveRequest(IAsyncResult result, out RequestContext requestContext)
{
return TryReceiveRequestAsyncResult.End(result, out requestContext);
}
Opmerkingen
De bestemming voor berichten die op een uitvoerkanaal worden verzonden, wordt opgegeven tijdens het maken van het kanaal.
De Send methode biedt geen garantie voor de bezorging van een bericht naar het externe eindpunt. Een implementatie van IOutputChannel kan om verschillende redenen berichten op de achtergrond verwijderen. Er is bijvoorbeeld geen bufferruimte meer. Als leveringsgaranties vereist zijn, gebruikt u IOutputSessionChannel.
Als u het bericht doorgeeft aan het uitvoerkanaal, wordt het bericht verbruikt. Nadat u hebt gebeld Send, kunt u het bericht niet meer inspecteren of bellen Close op het bericht.
Notities voor uitvoerders
De bewerking moet een TimeoutException opgegeven waarde geven als de opgegeven timeout waarde wordt overschreden.