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)

為指定主機所裝載的服務,初始化 InstanceContext 類別的新執行個體。

InstanceContext(ServiceHostBase, Object)

為指定物件初始化 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)
OnCloseAsync(TimeSpan)

表示服務執行個體的內容資訊。

(繼承來源 CommunicationObject)
OnClosed()

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

(繼承來源 CommunicationObject)
OnClosing()

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

(繼承來源 CommunicationObject)
OnEndClose(IAsyncResult)

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

(繼承來源 CommunicationObject)
OnEndOpen(IAsyncResult)

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

(繼承來源 CommunicationObject)
OnFaulted()

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

(繼承來源 CommunicationObject)
OnOpen(TimeSpan)

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

(繼承來源 CommunicationObject)
OnOpenAsync(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)

明確介面實作

IAsyncCommunicationObject.CloseAsync(TimeSpan)

表示服務執行個體的內容資訊。

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

表示服務執行個體的內容資訊。

(繼承來源 CommunicationObject)
IExtensibleObject<InstanceContext>.Extensions

取得這個可擴充物件的擴充功能物件集合。

擴充方法

CloseHelperAsync(ICommunicationObject, TimeSpan)

表示服務執行個體的內容資訊。

OpenHelperAsync(ICommunicationObject, TimeSpan)

表示服務執行個體的內容資訊。

GetInternalCloseTimeout(CommunicationObject)

表示服務執行個體的內容資訊。

適用於