Share via


IRequestChannel.Request Method (Message, TimeSpan)

Microsoft Silverlight will reach end of support after October 2021. Learn more.

Sends a message-based request and returns the correlated message-based response within a specified interval of time.

Namespace:  System.ServiceModel.Channels
Assembly:  System.ServiceModel (in System.ServiceModel.dll)

Syntax

'Declaration
Function Request ( _
    message As Message, _
    timeout As TimeSpan _
) As Message
Message Request(
    Message message,
    TimeSpan timeout
)

Parameters

  • timeout
    Type: System.TimeSpan
    The TimeSpan that specifies the interval of time within which a response must be received.

Return Value

Type: System.ServiceModel.Channels.Message
The Message received in response to the request.

Remarks

Implementations of IRequestChannel ensure that the response message is correlated with the request message.

Generally, if an implementation of IRequestChannel receives a message that is not correlated to an outstanding request, it is dropped.

The Request method can be called concurrently across multiple threads.

Passing the message into the request channel causes the message to be consumed. After you call Request, you can no longer inspect the message or call Close on the message.

If the request message is larger that the maximum message size allowed by the binding being used, a QuotaExceededException is thrown. The maximum message size is set by the MaxReceivedMessageSize property. The default value is 65536 bytes.

If a timeout is passed while calling the function then that value is used. If the SendTimeout is set on the binding, then the value on the binding is used if no timeout is specified while calling the function.

The DefaultSendTimeout is used if no timeout is specified on either the binding or while calling the function. This default value is 1 minute.

Notes to Implementers

The operation should throw a TimeoutException if the specified timeout is exceeded before the operation is completed.

Examples

The following code illustrates how to implement this method:

Version Information

Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Windows Phone OS 7.0

Platforms

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.