IRequestChannel.BeginRequest Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Inicia uma operação assíncrona para transmitir uma mensagem de solicitação para o lado da resposta de uma troca de mensagens solicitação/resposta.
Sobrecargas
BeginRequest(Message, AsyncCallback, Object) |
Inicia uma operação assíncrona para transmitir uma mensagem de solicitação para o lado da resposta de uma troca de mensagens solicitação/resposta. |
BeginRequest(Message, TimeSpan, AsyncCallback, Object) |
Inicia uma operação assíncrona para transmitir uma mensagem de solicitação para o lado da resposta de uma troca de mensagens solicitação/resposta dentro de um intervalo de tempo especificado. |
BeginRequest(Message, AsyncCallback, Object)
Inicia uma operação assíncrona para transmitir uma mensagem de solicitação para o lado da resposta de uma troca de mensagens solicitação/resposta.
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
Parâmetros
- callback
- AsyncCallback
O delegado de AsyncCallback que recebe a notificação sobre a conclusão da operação assíncrona que transmite uma mensagem de solicitação.
- state
- Object
Um objeto, especificado pelo aplicativo, que contém informações de estado associadas à operação assíncrona que transmite uma mensagem de solicitação.
Retornos
O IAsyncResult que faz referência à transmissão de mensagens assíncronas.
Exemplos
O código a seguir mostra como implementar esse método.
public IAsyncResult BeginRequest(Message message,
AsyncCallback callback, object state)
{
return this.InnerChannel.BeginRequest(message,
callback, state);
}
Comentários
Se a mensagem de solicitação for maior que o tamanho máximo da mensagem permitido pela associação que está sendo usada, um QuotaExceededException será gerado. O tamanho máximo da mensagem é definido pela MaxReceivedMessageSize propriedade. O valor padrão é 65536 bytes.
Aplica-se a
BeginRequest(Message, TimeSpan, AsyncCallback, Object)
Inicia uma operação assíncrona para transmitir uma mensagem de solicitação para o lado da resposta de uma troca de mensagens solicitação/resposta dentro de um intervalo de tempo especificado.
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
Parâmetros
- timeout
- TimeSpan
O TimeSpan que especifica o intervalo de tempo em que uma resposta deve ser recebida.
- callback
- AsyncCallback
O delegado de AsyncCallback que recebe a notificação sobre a conclusão da operação assíncrona que transmite uma mensagem de solicitação.
- state
- Object
Um objeto, especificado pelo aplicativo, que contém informações de estado associadas à operação assíncrona que transmite uma mensagem de solicitação.
Retornos
O IAsyncResult que faz referência à transmissão de mensagens assíncronas.
Exemplos
O código a seguir mostra como implementar este método:
public IAsyncResult BeginRequest(Message message,
TimeSpan timeout, AsyncCallback callback,
object state)
{
return this.InnerChannel.BeginRequest(message,
timeout, callback, state);
}
Comentários
Se a mensagem de solicitação for maior que o tamanho máximo da mensagem permitido pela associação que está sendo usada, um QuotaExceededException deve ser gerado. O tamanho máximo da mensagem é definido pela MaxReceivedMessageSize propriedade. O valor padrão é 65536 bytes.
Se um timeout
for passado ao chamar a função, esse valor será usado. Se o SendTimeout valor for definido na associação, o valor na associação será usado se não timeout
for especificado ao chamar a função.
O DefaultSendTimeout valor será usado se nenhum tempo limite for especificado na associação ou ao chamar a função. Esse valor padrão é de 1 minuto.
Notas aos Implementadores
A operação deverá gerar um TimeoutException caso o especificado timeout
seja excedido antes da conclusão da operação.