IOutputChannel.Send Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Odešle zprávu v aktuálním výstupním kanálu.
Přetížení
Send(Message) |
Odešle zprávu do cíle výstupního kanálu. |
Send(Message, TimeSpan) |
Odešle zprávu do aktuálního výstupního kanálu v zadaném časovém intervalu. |
Send(Message)
Odešle zprávu do cíle výstupního kanálu.
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)
Parametry
Příklady
Následující kód ukazuje, jak implementovat tuto metodu:
public IAsyncResult BeginTryReceiveRequest(TimeSpan timeout, AsyncCallback callback, object state)
{
TryReceiveRequestAsyncResult result = new TryReceiveRequestAsyncResult(this, timeout, callback, state);
result.Begin();
return result;
}
Poznámky
Cíl pro zprávy odesílané ve výstupním kanálu je určen při vytváření kanálu.
Metoda Send nezaručuje doručení zprávy do vzdáleného koncového bodu. Implementace IOutputChannel může bezobslužně zahazovat zprávy z různých důvodů. Může se stát, že už nebude k dispozici žádná vyrovnávací paměť, například. Pokud jsou vyžadovány záruky doručení, použijte IOutputSessionChannel.
Předání zprávy do výstupního kanálu způsobí, že se zpráva spotřebuje. Po volání Senduž nemůžete zprávu zkontrolovat ani zavolat Close na zprávu.
Platí pro
Send(Message, TimeSpan)
Odešle zprávu do aktuálního výstupního kanálu v zadaném časovém intervalu.
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)
Parametry
- timeout
- TimeSpan
Určuje TimeSpan , jak dlouho se má operace odesílání dokončit před uplynutím časového limitu.
Příklady
Následující kód ukazuje, jak implementovat tuto metodu:
public bool EndTryReceiveRequest(IAsyncResult result, out RequestContext requestContext)
{
return TryReceiveRequestAsyncResult.End(result, out requestContext);
}
Poznámky
Cíl pro zprávy odesílané ve výstupním kanálu je určen při vytváření kanálu.
Metoda Send nezaručuje doručení zprávy do vzdáleného koncového bodu. Implementace IOutputChannel může bezobslužně zahazovat zprávy z různých důvodů. Může se stát, že už nebude k dispozici žádná vyrovnávací paměť, například. Pokud jsou vyžadovány záruky doručení, použijte IOutputSessionChannel.
Předání zprávy do výstupního kanálu způsobí, že se zpráva spotřebuje. Po volání Senduž nemůžete zprávu zkontrolovat ani zavolat Close na zprávu.
Poznámky pro implementátory
Operace by měla vyvolat TimeoutException výjimku, pokud je zadaná hodnota timeout
překročena.