CommunicationObject 類別

定義

提供對系統中所有通訊導向物件而言常用的基本狀態機器基底實作,這些物件包括通道、接聽程式,以及通道與接聽程式處理站。

public ref class CommunicationObject abstract : System::ServiceModel::ICommunicationObject
public ref class CommunicationObject abstract : System::ServiceModel::IAsyncCommunicationObject
public abstract class CommunicationObject : System.ServiceModel.ICommunicationObject
public abstract class CommunicationObject : System.ServiceModel.IAsyncCommunicationObject
type CommunicationObject = class
    interface ICommunicationObject
type CommunicationObject = class
    interface ICommunicationObject
    interface IAsyncCommunicationObject
Public MustInherit Class CommunicationObject
Implements ICommunicationObject
Public MustInherit Class CommunicationObject
Implements IAsyncCommunicationObject
繼承
CommunicationObject
衍生
實作

備註

類別 CommunicationObjectICommunicationObject 實作 Windows Communication Foundation 中所有通訊物件的介面, (WCF) 。 方法實作會處理參數驗證、引發會通知發生狀態轉換的事件、提供與這些狀態轉換相關之其他處理的方法,以及確定這類狀態變更會經過協調。

建構函式

CommunicationObject()

初始化 CommunicationObject 類別的新執行個體。

CommunicationObject(Object)

使用可保護指定狀態轉換的互斥鎖定,初始化 CommunicationObject 類別的新執行個體。

屬性

DefaultCloseTimeout

在衍生類別中覆寫時,取得提供用來讓關閉作業完成的預設時間間隔。

DefaultOpenTimeout

在衍生類別中覆寫時,取得提供用來讓開啟作業完成的預設時間間隔。

IsDisposed

取得值,這個值會指出是否已經處置通訊物件。

State

取得值,這個值表示通訊物件目前的狀態。

ThisLock

取得會在狀態轉換期間保護類別執行個體的互斥鎖定。

方法

Abort()

導致通訊物件立即從目前的狀態轉換為關閉狀態。

BeginClose(AsyncCallback, Object)

開始非同步作業以關閉通訊物件。

BeginClose(TimeSpan, AsyncCallback, Object)

開始非同步作業,關閉有已指定逾時的通訊物件。

BeginOpen(AsyncCallback, Object)

開始非同步作業以開啟通訊物件。

BeginOpen(TimeSpan, AsyncCallback, Object)

開始非同步作業,開啟有已指定時間間隔的通訊物件。

Close()

導致通訊物件從目前的狀態轉換為已關閉狀態。

Close(TimeSpan)

在指定時間間隔內,讓通訊物件從目前的狀態轉換為已關閉狀態。

EndClose(IAsyncResult)

完成非同步作業以關閉通訊物件。

EndOpen(IAsyncResult)

完成非同步作業以開啟通訊物件。

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
Fault()

導致通訊物件從目前的狀態轉換為錯誤狀態。

GetCommunicationObjectType()

取得通訊物件的型別。

GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
OnAbort()

在通訊物件上插入處理 (當它因為叫用同步中止作業而轉換到關閉狀態之後)。

OnBeginClose(TimeSpan, AsyncCallback, Object)

在通訊物件因為叫用非同步關閉作業而轉換到關閉狀態後,插入處理。

OnBeginOpen(TimeSpan, AsyncCallback, Object)

在通訊物件上插入處理 (當它因為叫用非同步開啟作業而轉換到開啟狀態之後)。

OnClose(TimeSpan)

在通訊物件上插入處理 (當它因為叫用同步關閉作業而轉換到關閉狀態之後)。

OnCloseAsync(TimeSpan)

提供對系統中所有通訊導向物件而言常用的基本狀態機器基底實作,這些物件包括通道、接聽程式,以及通道與接聽程式處理站。

OnClosed()

在將通訊物件轉換為關閉狀態期間會叫用。

OnClosing()

在將通訊物件轉換為關閉狀態期間會叫用。

OnEndClose(IAsyncResult)

在關閉通訊物件時完成非同步作業。

OnEndOpen(IAsyncResult)

在開啟通訊物件時完成非同步作業。

OnFaulted()

在通訊物件上插入處理 (當它因為叫用同步錯誤作業而轉換到錯誤狀態之後)。

OnOpen(TimeSpan)

在通訊物件上插入處理 (當它轉換到開啟狀態之後),此作業必須在指定的時間間隔內完成。

OnOpenAsync(TimeSpan)

提供對系統中所有通訊導向物件而言常用的基本狀態機器基底實作,這些物件包括通道、接聽程式,以及通道與接聽程式處理站。

OnOpened()

在將通訊物件轉換至已開啟狀態期間會叫用。

OnOpening()

在將通訊物件轉換至開啟狀態期間會叫用。

Open()

導致通訊物件從已建立狀態轉換為已開啟狀態。

Open(TimeSpan)

在指定時間間隔內,讓通訊物件從已建立狀態轉換為已開啟狀態。

ThrowIfDisposed()

如果已處置通訊物件,則會擲回例外狀況。

ThrowIfDisposedOrImmutable()

如果通訊物件的 State 屬性並未設定為 Created 狀態,就會擲回例外狀況。

ThrowIfDisposedOrNotOpen()

如果通訊物件不是處於 Opened 狀態,就會擲回例外狀況。

ToString()

傳回代表目前物件的字串。

(繼承來源 Object)

事件

Closed

當通訊物件轉換至已關閉狀態時發生。

Closing

當通訊物件轉換至關閉狀態時就會發生。

Faulted

當通訊物件轉換至錯誤狀態時發生。

Opened

當通訊物件轉換至已開啟狀態時發生。

Opening

當通訊物件轉換至開啟狀態時發生。

明確介面實作

IAsyncCommunicationObject.CloseAsync(TimeSpan)

提供對系統中所有通訊導向物件而言常用的基本狀態機器基底實作,這些物件包括通道、接聽程式,以及通道與接聽程式處理站。

IAsyncCommunicationObject.OpenAsync(TimeSpan)

提供對系統中所有通訊導向物件而言常用的基本狀態機器基底實作,這些物件包括通道、接聽程式,以及通道與接聽程式處理站。

擴充方法

CloseHelperAsync(ICommunicationObject, TimeSpan)

提供對系統中所有通訊導向物件而言常用的基本狀態機器基底實作,這些物件包括通道、接聽程式,以及通道與接聽程式處理站。

OpenHelperAsync(ICommunicationObject, TimeSpan)

提供對系統中所有通訊導向物件而言常用的基本狀態機器基底實作,這些物件包括通道、接聽程式,以及通道與接聽程式處理站。

GetInternalCloseTimeout(CommunicationObject)

提供對系統中所有通訊導向物件而言常用的基本狀態機器基底實作,這些物件包括通道、接聽程式,以及通道與接聽程式處理站。

適用於