Export (0) Print
Expand All

IOutputChannel.BeginSend Method (Message, AsyncCallback, Object)

Begins an asynchronous operation to transmit a message to the destination of the output channel.

Namespace:  System.ServiceModel.Channels
Assemblies:   System.ServiceModel (in System.ServiceModel.dll)
  System.ServiceModel.Primitives (in System.ServiceModel.Primitives.dll)

IAsyncResult BeginSend(
	Message message,
	AsyncCallback callback,
	Object state
)

Parameters

message
Type: System.ServiceModel.Channels.Message

The Message being sent on the output channel.

callback
Type: System.AsyncCallback

The AsyncCallback delegate.

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 message transmission.

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 the 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.

The following code illustrates how to implement this method:

public IAsyncResult BeginReceiveRequest(TimeSpan timeout, AsyncCallback callback, object state)
{
    ReceiveRequestAsyncResult result = new ReceiveRequestAsyncResult(this, timeout, callback, state);
    result.Begin();
    return result;
}

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Portable Class Library

Supported in: Portable Class Library

Supported in: Windows Phone 8.1

Supported in: Windows Phone Silverlight 8.1

Supported in: Windows Phone Silverlight 8
Show:
© 2015 Microsoft