StreamSecurityUpgradeProvider 類別

定義

實作自訂安全性升級提供者,此提供者繼承自這個 abstract 基底類別。

public ref class StreamSecurityUpgradeProvider abstract : System::ServiceModel::Channels::StreamUpgradeProvider
public abstract class StreamSecurityUpgradeProvider : System.ServiceModel.Channels.StreamUpgradeProvider
type StreamSecurityUpgradeProvider = class
    inherit StreamUpgradeProvider
Public MustInherit Class StreamSecurityUpgradeProvider
Inherits StreamUpgradeProvider
繼承
StreamSecurityUpgradeProvider

備註

若要新增安全性升級,您可以實作一個衍生自 StreamSecurityUpgradeProvider 的類別。

升級程序的步驟如下:

  1. 實作衍生自 StreamSecurityUpgradeProvider 的類別。

  2. 進行註冊。 註冊的方式是為它建立繫結項目,然後在自訂繫結中註冊提供者。

  3. 您所實作的衍生類別會建立 StreamSecurityUpgradeInitiator 的執行個體,此執行個體在執行階段會啟始其連線之另一端的要求,以升級通道傳輸層。

  4. 您所實作的衍生類別會建立 StreamSecurityUpgradeAcceptor 的執行個體,此執行個體在執行階段會收到上一個步驟中的升級要求,並在可能的情況下接受升級,並將升級的資料流傳回其連線的另一端。

安全性升級要求可以是許多類似要求的其中一個。 如果是這種情形,會以確定的順序處理要求。 如需詳細資訊,請參閱StreamUpgradeProvider

建構函式

StreamSecurityUpgradeProvider()

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

StreamSecurityUpgradeProvider(IDefaultCommunicationTimeouts)

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

屬性

DefaultCloseTimeout

取得 DefaultCloseTimeout。

(繼承來源 StreamUpgradeProvider)
DefaultOpenTimeout

取得 DefaultOpenTimeout。

(繼承來源 StreamUpgradeProvider)
Identity

取得用於安全性升級的識別。

IsDisposed

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

(繼承來源 CommunicationObject)
State

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

(繼承來源 CommunicationObject)
ThisLock

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

(繼承來源 CommunicationObject)

方法

Abort()

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

(繼承來源 CommunicationObject)
BeginClose(AsyncCallback, Object)

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

(繼承來源 CommunicationObject)
BeginClose(TimeSpan, AsyncCallback, Object)

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

(繼承來源 CommunicationObject)
BeginOpen(AsyncCallback, Object)

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

(繼承來源 CommunicationObject)
BeginOpen(TimeSpan, AsyncCallback, Object)

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

(繼承來源 CommunicationObject)
Close()

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

(繼承來源 CommunicationObject)
Close(TimeSpan)

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

(繼承來源 CommunicationObject)
CreateUpgradeAcceptor()

建立 StreamUpgradeAcceptor 的執行個體。

(繼承來源 StreamUpgradeProvider)
CreateUpgradeInitiator(EndpointAddress, Uri)

建立 StreamUpgradeInitiator 的執行個體。

(繼承來源 StreamUpgradeProvider)
EndClose(IAsyncResult)

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

(繼承來源 CommunicationObject)
EndOpen(IAsyncResult)

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

(繼承來源 CommunicationObject)
Equals(Object)

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

(繼承來源 Object)
Fault()

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

(繼承來源 CommunicationObject)
GetCommunicationObjectType()

取得通訊物件的型別。

(繼承來源 CommunicationObject)
GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetProperty<T>()

在衍生類別中實作時,會取得表示資料流升級起始端的目前資料流屬性。

(繼承來源 StreamUpgradeProvider)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
OnAbort()

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

(繼承來源 CommunicationObject)
OnBeginClose(TimeSpan, AsyncCallback, Object)

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

(繼承來源 CommunicationObject)
OnBeginOpen(TimeSpan, AsyncCallback, Object)

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

(繼承來源 CommunicationObject)
OnClose(TimeSpan)

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

(繼承來源 CommunicationObject)
OnCloseAsync(TimeSpan)

實作自訂安全性升級提供者,此提供者繼承自這個 abstract 基底類別。

(繼承來源 CommunicationObject)
OnClosed()

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

(繼承來源 CommunicationObject)
OnClosing()

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

(繼承來源 CommunicationObject)
OnEndClose(IAsyncResult)

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

(繼承來源 CommunicationObject)
OnEndOpen(IAsyncResult)

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

(繼承來源 CommunicationObject)
OnFaulted()

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

(繼承來源 CommunicationObject)
OnOpen(TimeSpan)

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

(繼承來源 CommunicationObject)
OnOpenAsync(TimeSpan)

實作自訂安全性升級提供者,此提供者繼承自這個 abstract 基底類別。

(繼承來源 CommunicationObject)
OnOpened()

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

(繼承來源 CommunicationObject)
OnOpening()

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

(繼承來源 CommunicationObject)
Open()

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

(繼承來源 CommunicationObject)
Open(TimeSpan)

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

(繼承來源 CommunicationObject)
ThrowIfDisposed()

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

(繼承來源 CommunicationObject)
ThrowIfDisposedOrImmutable()

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

(繼承來源 CommunicationObject)
ThrowIfDisposedOrNotOpen()

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

(繼承來源 CommunicationObject)
ToString()

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

(繼承來源 Object)

事件

Closed

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

(繼承來源 CommunicationObject)
Closing

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

(繼承來源 CommunicationObject)
Faulted

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

(繼承來源 CommunicationObject)
Opened

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

(繼承來源 CommunicationObject)
Opening

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

(繼承來源 CommunicationObject)

明確介面實作

IAsyncCommunicationObject.CloseAsync(TimeSpan)

實作自訂安全性升級提供者,此提供者繼承自這個 abstract 基底類別。

(繼承來源 CommunicationObject)
IAsyncCommunicationObject.OpenAsync(TimeSpan)

實作自訂安全性升級提供者,此提供者繼承自這個 abstract 基底類別。

(繼承來源 CommunicationObject)

擴充方法

CloseHelperAsync(ICommunicationObject, TimeSpan)

實作自訂安全性升級提供者,此提供者繼承自這個 abstract 基底類別。

OpenHelperAsync(ICommunicationObject, TimeSpan)

實作自訂安全性升級提供者,此提供者繼承自這個 abstract 基底類別。

GetInternalCloseTimeout(CommunicationObject)

實作自訂安全性升級提供者,此提供者繼承自這個 abstract 基底類別。

適用於

另請參閱