IOutputChannel.BeginSend Method (Message, TimeSpan, AsyncCallback, Object)

 
System_CAPS_noteNote

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Begins an asynchronous operation to transmit a message to the destination of the output channel within a specified interval of time.

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

IAsyncResult BeginSend(
	Message message,
	TimeSpan timeout,
	AsyncCallback callback,
	object state
)

Parameters

message
Type: System.ServiceModel.Channels.Message

The Message being sent on the output channel.

timeout
Type: System.TimeSpan

The TimeSpan that specifies how long the send operation has to complete before timing out.

callback
Type: System.AsyncCallback

The AsyncCallback delegate that receives the notification of the asynchronous operation send completion.

state
Type: System.Object

An object, specified by the application, that contains state information associated with the asynchronous send operation.

Return Value

Type: System.IAsyncResult

The IAsyncResult that references the asynchronous send operation.

The destination for messages sent out on an output channel is specified at channel creation time.

The BeginSend method does not guarantee the delivery of message to the remote endpoint. If delivery guarantees are required, use IOutputSessionChannel.

If the message sent 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.

Notes to Implementers:

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

The following code illustrates how to implement this method:

public RequestContext EndReceiveRequest(IAsyncResult result)
{
    return ReceiveRequestAsyncResult.End(result);
}

Universal Windows Platform
Available since 8
.NET Framework
Available since 3.0
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Return to top
Show: