ICommunicationObject.BeginOpen Method (TimeSpan, AsyncCallback, Object)

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

Begins an asynchronous operation to open a communication object within a specified interval of time.

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

Syntax

Function BeginOpen ( _
    timeout As TimeSpan, _
    callback As AsyncCallback, _
    state As Object _
) As IAsyncResult
IAsyncResult BeginOpen(
    TimeSpan timeout,
    AsyncCallback callback,
    Object state
)

Parameters

  • state
    Type: System..::.Object
    An object, specified by the application, that contains state information associated with the asynchronous open operation.

Return Value

Type: System..::.IAsyncResult
The IAsyncResult that references the asynchronous open operation.

Exceptions

Exception Condition
CommunicationException

The ICommunicationObject was unable to be opened and has entered the Faulted state.

TimeoutException

The specified time-out elapsed before the ICommunicationObject was able to enter the Opened state and has entered the Faulted state.

Remarks

When an ICommunicationObject is instantiated, it begins in the Created state. In the Created state, the object can be configured (for example, properties can be set, or events can be registered), but it is not yet usable to send or receive messages. The Open method causes an ICommunicationObject to enter into the Opening state, where it remains until the open operation succeeds, the open operation times out or fails and the object becomes faulted, or the ICommunicationObject is aborted.

In the Opened state, the ICommunicationObject is usable (for example, messages can be received), but it is no longer configurable.

Notes to Implementers

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

Version Information

Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Platforms

Windows Phone

See Also

Reference

ICommunicationObject Interface

BeginOpen Overload

System.ServiceModel Namespace