Windows apps
Collapse the table of content
Expand the table of content
Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

IOutputChannel::BeginSend Method (Message^, TimeSpan, AsyncCallback^, Object^)

 

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:
© 2017 Microsoft