InstanceContext 类

定义

表示服务实例的上下文信息。

public ref class InstanceContext sealed : System::ServiceModel::Channels::CommunicationObject, System::ServiceModel::IExtensibleObject<System::ServiceModel::InstanceContext ^>
public sealed class InstanceContext : System.ServiceModel.Channels.CommunicationObject, System.ServiceModel.IExtensibleObject<System.ServiceModel.InstanceContext>
type InstanceContext = class
    inherit CommunicationObject
    interface IExtensibleObject<InstanceContext>
Public NotInheritable Class InstanceContext
Inherits CommunicationObject
Implements IExtensibleObject(Of InstanceContext)
继承
InstanceContext
实现

示例

以下代码演示如何从服务获取实例上下文信息:

string info = "";

OperationContext operationContext = OperationContext.Current;
InstanceContext instanceContext = operationContext.InstanceContext;

info += "    " + "State: " + instanceContext.State.ToString() + "\n";
info += "    " + "ManualFlowControlLimit: " + instanceContext.ManualFlowControlLimit.ToString() + "\n";
info += "    " + "HashCode: " + instanceContext.GetHashCode().ToString() + "\n";

return info;

构造函数

名称 说明
InstanceContext(Object)

为实现服务实例的 InstanceContext 指定对象初始化类的新实例。

InstanceContext(ServiceHostBase, Object)

为实现服务实例并由指定主机托管的 InstanceContext 指定对象初始化类的新实例。

InstanceContext(ServiceHostBase)

为由指定主机托管的服务初始化类的新实例 InstanceContext

属性

名称 说明
DefaultCloseTimeout

在派生类中重写时,获取为完成关闭操作提供的默认时间间隔。

(继承自 CommunicationObject)
DefaultOpenTimeout

在派生类中重写时,获取为打开操作完成提供的默认时间间隔。

(继承自 CommunicationObject)
Extensions

获取与服务实例关联的扩展集合(如果有)。

Host

获取服务实例的主机。

IncomingChannels

获取传入服务实例的会话通道。

IsDisposed

获取一个值,该值指示是否已释放通信对象。

(继承自 CommunicationObject)
ManualFlowControlLimit

获取或设置实例上下文可以处理的消息数的限制。

OutgoingChannels

获取从服务实例传出的会话通道。

State

获取一个值,该值指示通信对象的当前状态。

(继承自 CommunicationObject)
SynchronizationContext

获取或设置用于与当前实例上下文进行线程同步的上下文。

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)
EndClose(IAsyncResult)

完成异步操作以关闭通信对象。

(继承自 CommunicationObject)
EndOpen(IAsyncResult)

完成异步操作以打开通信对象。

(继承自 CommunicationObject)
Equals(Object)

确定指定的对象是否等于当前对象。

(继承自 Object)
Fault()

使通信对象从其当前状态过渡到错误状态。

(继承自 CommunicationObject)
GetCommunicationObjectType()

获取通信对象的类型。

(继承自 CommunicationObject)
GetHashCode()

用作默认哈希函数。

(继承自 Object)
GetServiceInstance()

返回实例上下文的服务实例。

GetServiceInstance(Message)

返回实例上下文的服务实例,以响应传入消息。

GetType()

获取当前实例的 Type

(继承自 Object)
IncrementManualFlowControlLimit(Int32)

增加服务实例可以处理的消息数。

MemberwiseClone()

创建当前 Object的浅表副本。

(继承自 Object)
OnAbort()

由于调用同步中止操作,在通信对象转换为结束状态后,在通信对象上插入处理。

(继承自 CommunicationObject)
OnBeginClose(TimeSpan, AsyncCallback, Object)

由于调用异步关闭操作,通信对象转换为结束状态后插入处理。

(继承自 CommunicationObject)
OnBeginOpen(TimeSpan, AsyncCallback, Object)

由于调用异步打开操作,在通信对象转换为打开状态后,在通信对象上插入处理。

(继承自 CommunicationObject)
OnClose(TimeSpan)

由于调用同步关闭操作,在通信对象转换为结束状态后,在通信对象上插入处理。

(继承自 CommunicationObject)
OnClosed()

在将通信对象转换为结束状态期间调用。

(继承自 CommunicationObject)
OnClosing()

在将通信对象转换为结束状态期间调用。

(继承自 CommunicationObject)
OnEndClose(IAsyncResult)

在通信对象的关闭时完成异步操作。

(继承自 CommunicationObject)
OnEndOpen(IAsyncResult)

在打开通信对象时完成异步操作。

(继承自 CommunicationObject)
OnFaulted()

在通信对象由于调用同步故障操作而转换为错误状态后,在通信对象上插入处理。

(继承自 CommunicationObject)
OnOpen(TimeSpan)

在通信对象转换为必须在指定时间间隔内完成的打开状态后,在通信对象上插入处理。

(继承自 CommunicationObject)
OnOpened()

在将通信对象转换为打开状态期间调用。

(继承自 CommunicationObject)
OnOpening()

在将通信对象转换为打开状态期间调用。

(继承自 CommunicationObject)
Open()

使通信对象从创建的状态转换为打开状态。

(继承自 CommunicationObject)
Open(TimeSpan)

使通信对象在指定的时间间隔内从创建的状态转换为打开状态。

(继承自 CommunicationObject)
ReleaseServiceInstance()

释放服务实例。

ThrowIfDisposed()

如果释放通信对象,则引发异常。

(继承自 CommunicationObject)
ThrowIfDisposedOrImmutable()

如果未将属性设置为State状态的通信对象Created,则引发异常。

(继承自 CommunicationObject)
ThrowIfDisposedOrNotOpen()

如果通信对象未处于 Opened 状态,则引发异常。

(继承自 CommunicationObject)
ToString()

返回一个表示当前对象的字符串。

(继承自 Object)

活动

名称 说明
Closed

当通信对象转换为关闭状态时发生。

(继承自 CommunicationObject)
Closing

当通信对象转换为结束状态时发生。

(继承自 CommunicationObject)
Faulted

当通信对象转换为错误状态时发生。

(继承自 CommunicationObject)
Opened

当通信对象转换为打开状态时发生。

(继承自 CommunicationObject)
Opening

当通信对象转换为打开状态时发生。

(继承自 CommunicationObject)

显式接口实现

名称 说明
IExtensibleObject<InstanceContext>.Extensions

获取此可扩展对象的扩展对象的集合。

适用于