Sdílet prostřednictvím


IOutputChannel.BeginSend Metoda

Definice

Zahájí asynchronní operaci odeslání zprávy.

Přetížení

BeginSend(Message, AsyncCallback, Object)

Zahájí asynchronní operaci přenosu zprávy do cíle výstupního kanálu.

BeginSend(Message, TimeSpan, AsyncCallback, Object)

Zahájí asynchronní operaci přenosu zprávy do cíle výstupního kanálu v zadaném časovém intervalu.

BeginSend(Message, AsyncCallback, Object)

Zdroj:
IOutputChannel.cs

Zahájí asynchronní operaci přenosu zprávy do cíle výstupního kanálu.

public:
 IAsyncResult ^ BeginSend(System::ServiceModel::Channels::Message ^ message, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginSend (System.ServiceModel.Channels.Message message, AsyncCallback callback, object state);
abstract member BeginSend : System.ServiceModel.Channels.Message * AsyncCallback * obj -> IAsyncResult
Public Function BeginSend (message As Message, callback As AsyncCallback, state As Object) As IAsyncResult

Parametry

message
Message

Probíhá Message odesílání ve výstupním kanálu.

callback
AsyncCallback

Delegát.AsyncCallback

state
Object

Objekt určený aplikací, který obsahuje informace o stavu přidružené k asynchronní operaci odeslání.

Návraty

Odkazuje IAsyncResult na asynchronní přenos zpráv.

Příklady

Následující kód ukazuje, jak tuto metodu implementovat:

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

Poznámky

Cíl zpráv odeslaných ve výstupním kanálu je určen při vytváření kanálu.

Metoda BeginSend nezaručuje doručení zprávy do vzdáleného koncového bodu. Pokud se vyžadují záruky doručení, použijte IOutputSessionChannel.

Pokud je odeslaná zpráva větší než maximální velikost zprávy povolená použitou vazbou QuotaExceededException , vyvolá se zpráva . Maximální velikost zprávy je nastavena MaxReceivedMessageSize vlastností . Výchozí hodnota je 65536 bajtů.

Platí pro

BeginSend(Message, TimeSpan, AsyncCallback, Object)

Zdroj:
IOutputChannel.cs

Zahájí asynchronní operaci přenosu zprávy do cíle výstupního kanálu v zadaném časovém intervalu.

public:
 IAsyncResult ^ BeginSend(System::ServiceModel::Channels::Message ^ message, TimeSpan timeout, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginSend (System.ServiceModel.Channels.Message message, TimeSpan timeout, AsyncCallback callback, object state);
abstract member BeginSend : System.ServiceModel.Channels.Message * TimeSpan * AsyncCallback * obj -> IAsyncResult
Public Function BeginSend (message As Message, timeout As TimeSpan, callback As AsyncCallback, state As Object) As IAsyncResult

Parametry

message
Message

Probíhá Message odesílání ve výstupním kanálu.

timeout
TimeSpan

Určuje TimeSpan , jak dlouho se má operace odeslání dokončit, než vyprší časový limit.

callback
AsyncCallback

Delegát AsyncCallback , který obdrží oznámení o asynchronní operaci odeslat dokončení.

state
Object

Objekt určený aplikací, který obsahuje informace o stavu přidružené k asynchronní operaci odeslání.

Návraty

Odkazuje IAsyncResult na asynchronní operaci odeslání.

Příklady

Následující kód ukazuje, jak tuto metodu implementovat:

public RequestContext EndReceiveRequest(IAsyncResult result)
{
    return ReceiveRequestAsyncResult.End(result);
}

Poznámky

Cíl zpráv odeslaných ve výstupním kanálu je určen při vytváření kanálu.

Metoda BeginSend nezaručuje doručení zprávy do vzdáleného koncového bodu. Pokud se vyžadují záruky doručení, použijte IOutputSessionChannel.

Pokud je odeslaná zpráva větší než maximální velikost zprávy povolená použitou vazbou QuotaExceededException , vyvolá se zpráva . Maximální velikost zprávy je nastavena MaxReceivedMessageSize vlastností . Výchozí hodnota je 65536 bajtů.

Poznámky pro implementátory

Pokud je zadaná timeout hodnota překročenaTimeoutException, měla by operace vyvolat výjimku .

Platí pro