IRequestChannel.BeginRequest Metodo
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Avvia un'operazione asincrona per trasmettere un messaggio di richiesta al lato reply di uno scambio di messaggi request/reply.
BeginRequest(Message, AsyncCallback, Object) |
Avvia un'operazione asincrona per trasmettere un messaggio di richiesta al lato reply di uno scambio di messaggi request/reply. |
BeginRequest(Message, TimeSpan, AsyncCallback, Object) |
Avvia un'operazione asincrona per trasmettere un messaggio di richiesta al lato reply di uno scambio di messaggi request/reply entro l'intervallo di tempo specificato. |
BeginRequest(Message, AsyncCallback, Object)
Avvia un'operazione asincrona per trasmettere un messaggio di richiesta al lato reply 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
- callback
- AsyncCallback
Delegato AsyncCallback che riceve la notifica del completamento dell'operazione asincrona di trasmissione di un messaggio di richiesta.
- state
- Object
Oggetto, specificato dall'applicazione, che contiene le informazioni sullo stato associate all'operazione asincrona di trasmissione di un messaggio di richiesta.
Restituisce
Interfaccia IAsyncResult che fa riferimento alla trasmissione del messaggio asincrono.
Esempio
Nel codice seguente viene illustrato come implementare questo metodo.
public IAsyncResult BeginRequest(Message message,
AsyncCallback callback, object state)
{
return this.InnerChannel.BeginRequest(message,
callback, state);
}
Commenti
Se le dimensioni del messaggio di richiesta sono superiori a quelle massime consentite dall'associazione in uso, viene generata QuotaExceededException. La dimensione massima del messaggio viene impostata dalla proprietà MaxReceivedMessageSize. Il valore predefinito è 65536 byte.
Si applica a
BeginRequest(Message, TimeSpan, AsyncCallback, Object)
Avvia un'operazione asincrona per trasmettere un messaggio di richiesta al lato reply di uno scambio di messaggi request/reply entro l'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
- timeout
- TimeSpan
TimeSpan specifica l'intervallo di tempo entro il quale deve pervenire una risposta.
- callback
- AsyncCallback
Delegato AsyncCallback che riceve la notifica del completamento dell'operazione asincrona di trasmissione di un messaggio di richiesta.
- state
- Object
Oggetto, specificato dall'applicazione, che contiene le informazioni sullo stato associate all'operazione asincrona di trasmissione di un messaggio di richiesta.
Restituisce
Interfaccia IAsyncResult che fa riferimento alla trasmissione del messaggio asincrono.
Esempio
Nel codice seguente viene illustrato 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 le dimensioni del messaggio di richiesta sono superiori a quelle massime consentite dall'associazione in uso, dovrebbe essere generata QuotaExceededException. La dimensione massima del messaggio viene impostata dalla proprietà MaxReceivedMessageSize. Il valore predefinito è 65536 byte.
Se durante la chiamata della funzione viene passato un timeout
, viene utilizzato tale valore. Se nell'associazione è impostato SendTimeout, nel caso in cui durante la chiamata della funzione non sia specificato alcun timeout
, viene utilizzato il valore nell'associazione.
Se non viene specificato alcun timeout nell'associazione o durante la chiamata della funzione, viene utilizzato DefaultSendTimeout. Il valore predefinito è 1 minuto.
Note per gli implementatori
L'operazione deve generare un'eccezione TimeoutException se il parametro timeout
specificato viene superato prima del completamento dell'operazione.