Sdílet prostřednictvím


IRequestChannel.BeginRequest Metoda

Definice

Zahájí asynchronní operaci, která odešle zprávu požadavku na stranu odpovědi výměny zpráv o odpovědi.

Přetížení

BeginRequest(Message, AsyncCallback, Object)

Zahájí asynchronní operaci, která odešle zprávu požadavku na stranu odpovědi výměny zpráv o odpovědi.

BeginRequest(Message, TimeSpan, AsyncCallback, Object)

Zahájí asynchronní operaci, která odešle zprávu požadavku na stranu odpovědi výměny zpráv odpovědi v zadaném časovém intervalu.

BeginRequest(Message, AsyncCallback, Object)

Zahájí asynchronní operaci, která odešle zprávu požadavku na stranu odpovědi výměny zpráv o odpovědi.

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

Parametry

message
Message

Požadavek Message , který se má přenést.

callback
AsyncCallback

Delegát AsyncCallback , který obdrží oznámení o dokončení asynchronní operace předávací zprávu požadavku.

state
Object

Objekt určený aplikací, který obsahuje informace o stavu přidružené k asynchronní operaci, která přenáší zprávu požadavku.

Návraty

IAsyncResult

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

Příklady

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

public IAsyncResult BeginRequest(Message message,
    AsyncCallback callback, object state)
{
    return this.InnerChannel.BeginRequest(message,
        callback, state);
}

Poznámky

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

Platí pro

BeginRequest(Message, TimeSpan, AsyncCallback, Object)

Zahájí asynchronní operaci, která odešle zprávu požadavku na stranu odpovědi výměny zpráv odpovědi v zadaném časovém intervalu.

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

Parametry

message
Message

Požadavek Message , který se má přenést.

timeout
TimeSpan

Určuje TimeSpan časový interval, ve kterém musí být přijata odpověď.

callback
AsyncCallback

Delegát AsyncCallback , který obdrží oznámení o dokončení asynchronní operace předávací zprávu požadavku.

state
Object

Objekt určený aplikací, který obsahuje informace o stavu přidružené k asynchronní operaci, která přenáší zprávu požadavku.

Návraty

IAsyncResult

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

Příklady

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

public IAsyncResult BeginRequest(Message message,
    TimeSpan timeout, AsyncCallback callback,
    object state)
{
    return this.InnerChannel.BeginRequest(message,
        timeout, callback, state);
}

Poznámky

Pokud je zpráva požadavku větší, než je maximální velikost zprávy povolená použitou vazbou, QuotaExceededException měla by být vyvolána. Vlastnost nastaví MaxReceivedMessageSize maximální velikost zprávy. Výchozí hodnota je 65536 bajtů.

timeout Pokud se funkce předá při volání funkce, použije se tato hodnota. Pokud je nastavena SendTimeout na vazbu, použije se hodnota vazby, pokud není zadána při timeout volání funkce.

Použije DefaultSendTimeout se, pokud není pro vazbu nebo při volání funkce zadán žádný časový limit. Tato výchozí hodnota je 1 minuta.

Poznámky pro implementátory

Operace by měla vyvolat TimeoutException výjimku, pokud je zadaná timeout hodnota překročena před dokončením operace.

Platí pro