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 基类。

适用于

另请参阅