CommunicationObject::Close Method ()


Causes a communication object to transition from its current state into the closed state.

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

virtual void Close() sealed

Exception Condition

The communication object is not in a Opened or Opening state and cannot be modified.


The communication object is in a Closing or Closed state and cannot be modified.


The communication object is in a Faulted state and cannot be modified.


The default interval of time that was allotted for the operation was exceeded before the operation was completed.

This method causes a CommunicationObject to gracefully transition from any state, other than the Closed state, into the Closed state. The Close method allows any unfinished work to be completed before returning. For example, finish sending any buffered messages.

The CommunicationObject enters the Closing state and remains in it after the Close method is called until the transition to the Closed state is completed. The transition consists of making successive calls to OnClosing, OnClose(TimeSpan), and OnClosed.

There is also an asynchronous version of the close method that is initiated by calling BeginClose.

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