Condividi tramite


IRequestChannel.BeginRequest Metodo

Definizione

Avvia un'operazione asincrona per trasmettere un messaggio di richiesta al lato risposta di uno scambio di messaggi request-reply.

Overload

Nome Descrizione
BeginRequest(Message, AsyncCallback, Object)

Avvia un'operazione asincrona per trasmettere un messaggio di richiesta al lato risposta di uno scambio di messaggi request-reply.

BeginRequest(Message, TimeSpan, AsyncCallback, Object)

Avvia un'operazione asincrona per trasmettere un messaggio di richiesta al lato risposta di uno scambio di messaggi di richiesta-risposta entro un intervallo di tempo specificato.

BeginRequest(Message, AsyncCallback, Object)

Origine:
IRequestChannel.cs
Origine:
IRequestChannel.cs
Origine:
IRequestChannel.cs

Avvia un'operazione asincrona per trasmettere un messaggio di richiesta al lato risposta di uno scambio di messaggi request-reply.

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

Parametri

message
Message

Richiesta Message da trasmettere.

callback
AsyncCallback

Delegato AsyncCallback che riceve la notifica del completamento dell'operazione asincrona che trasmette un messaggio di richiesta.

state
Object

Oggetto, specificato dall'applicazione, che contiene informazioni sullo stato associate all'operazione asincrona che trasmette un messaggio di richiesta.

Restituisce

Oggetto IAsyncResult che fa riferimento alla trasmissione asincrona del messaggio.

Esempio

Il codice seguente illustra come implementare questo metodo.

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

Commenti

Se il messaggio di richiesta è maggiore della dimensione massima consentita dall'associazione utilizzata, viene generata un'eccezione QuotaExceededException . La dimensione massima del messaggio viene impostata dalla MaxReceivedMessageSize proprietà . Il valore predefinito è 65536 byte.

Si applica a

BeginRequest(Message, TimeSpan, AsyncCallback, Object)

Origine:
IRequestChannel.cs
Origine:
IRequestChannel.cs
Origine:
IRequestChannel.cs

Avvia un'operazione asincrona per trasmettere un messaggio di richiesta al lato risposta di uno scambio di messaggi di richiesta-risposta entro un intervallo di tempo specificato.

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

Parametri

message
Message

Richiesta Message da trasmettere.

timeout
TimeSpan

Oggetto TimeSpan che specifica l'intervallo di tempo entro il quale deve essere ricevuta una risposta.

callback
AsyncCallback

Delegato AsyncCallback che riceve la notifica del completamento dell'operazione asincrona che trasmette un messaggio di richiesta.

state
Object

Oggetto, specificato dall'applicazione, che contiene informazioni sullo stato associate all'operazione asincrona che trasmette un messaggio di richiesta.

Restituisce

Oggetto IAsyncResult che fa riferimento alla trasmissione asincrona del messaggio.

Esempio

Il codice seguente illustra come implementare questo metodo:

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

Commenti

Se il messaggio di richiesta è maggiore della dimensione massima consentita dall'associazione utilizzata, deve essere generata un'eccezione QuotaExceededException . La dimensione massima del messaggio viene impostata dalla MaxReceivedMessageSize proprietà . Il valore predefinito è 65536 byte.

Se viene passato un oggetto timeout durante la chiamata alla funzione, viene usato tale valore. Se l'oggetto SendTimeout è impostato sull'associazione, il valore dell'associazione viene usato se non viene specificato alcun timeout oggetto durante la chiamata alla funzione.

Viene DefaultSendTimeout utilizzato se non viene specificato alcun timeout nell'associazione o durante la chiamata alla funzione. Questo valore predefinito è 1 minuto.

Note per gli implementatori

L'operazione deve generare un'eccezione TimeoutException se l'oggetto specificato timeout viene superato prima del completamento dell'operazione.

Si applica a