CommunicationObject.Open 方法

定義

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

多載

Open()

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

Open(TimeSpan)

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

備註

呼叫 Open 方法時,這個方法會使 CommunicationObject 進入 Opening 狀態並呼叫 OnOpeningOpenOnOpenedOnOpened 方法會將物件的狀態設定為 Open 狀態,藉此完成 Opened 方法。

Open()

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

public:
 virtual void Open();
public void Open ();
abstract member Open : unit -> unit
override this.Open : unit -> unit
Public Sub Open ()

實作

例外狀況

通訊物件並非處於 OpenedOpening 狀態,無法修改。

通訊物件處於 ClosingClosed 狀態,無法修改。

通訊物件處於 Faulted 狀態,無法修改。

已超過為作業分配的預設時間間隔,該作業未完成。

備註

當具現化 CommunicationObject 時,它一開始會處於 Created 狀態。 在 Created 狀態下,可以設定物件 (例如可以設定屬性或註冊事件),但是仍無法傳送或接收訊息。 呼叫 Open 方法時,這個方法會使 CommunicationObject 進入 Opening 狀態並呼叫 OnOpeningOpenOnOpenedOnOpened 方法會將物件的狀態設定為 Open 狀態,藉此完成 Opened 方法。

Opened 狀態下,CommunicationObject 可供使用 (例如可以接受訊息),但是無法再進行設定。

也有非同步的方式可用於開啟方法,亦即藉由呼叫 OnBeginOpen(TimeSpan, AsyncCallback, Object) 啟始,呼叫 EndOpen 完成。

Windows 驗證的憑證擷取

當使用 Windows 驗證時,服務會根據目前的內容執行緒使用認證。 當呼叫 Open 方法時會取得認證。

注意

如果是非同步呼叫,當叫用 BeginOpen 時會擷取認證。 然而,這無法保證是實際的認證。 也就是說,呼叫者的認證可能會切換為其他身分識別。 如需詳細資訊,請參閱 Windows 用戶端的訊息安全性

另請參閱

適用於

Open(TimeSpan)

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

public:
 virtual void Open(TimeSpan timeout);
public void Open (TimeSpan timeout);
abstract member Open : TimeSpan -> unit
override this.Open : TimeSpan -> unit
Public Sub Open (timeout As TimeSpan)

參數

timeout
TimeSpan

TimeSpan,指定必須在逾時前多久完成開啟作業。

實作

例外狀況

通訊物件並非處於 OpenedOpening 狀態,無法修改。

通訊物件處於 ClosingClosed 狀態,無法修改。

通訊物件處於 Faulted 狀態,無法修改。

已超過為作業分配的預設時間間隔,該作業未完成。

備註

當具現化 CommunicationObject 時,它一開始會處於 Created 狀態。 在 Created 狀態下,可以設定物件 (例如可以設定屬性或註冊事件),但是仍無法傳送或接收訊息。 呼叫 Open 方法時,這個方法會使 CommunicationObject 進入 Opening 狀態並呼叫 OnOpeningOpenOnOpenedOnOpened 方法會將物件的狀態設定為 Open 狀態,藉此完成 Opened 方法。

Opened 狀態下,CommunicationObject 可供使用 (例如可以接受訊息),但是無法再進行設定。

也有非同步的方式可用於開啟方法,亦即藉由呼叫 BeginOpen 啟始,呼叫 EndOpen 完成。

適用於