IObjectReference.GetRealObject(StreamingContext) メソッド

定義

シリアル化されたストリームが指定するオブジェクトではなく、逆シリアル化する必要がある実際のオブジェクトを返します。

public:
 System::Object ^ GetRealObject(System::Runtime::Serialization::StreamingContext context);
public object GetRealObject(System.Runtime.Serialization.StreamingContext context);
[System.Security.SecurityCritical]
public object GetRealObject(System.Runtime.Serialization.StreamingContext context);
abstract member GetRealObject : System.Runtime.Serialization.StreamingContext -> obj
[<System.Security.SecurityCritical>]
abstract member GetRealObject : System.Runtime.Serialization.StreamingContext -> obj
Public Function GetRealObject (context As StreamingContext) As Object

パラメーター

context
StreamingContext

現在のオブジェクトの逆シリアル化元の StreamingContext

返品

グラフに配置される実際のオブジェクト。

属性

例外

呼び出し元に必要なアクセス許可がありません。 この呼び出しは、中信頼サーバーでは機能しません。

注釈

このメソッドは、実際のオブジェクトではなく、プロキシ作成者オブジェクトをシリアル化するリモート処理の状況で役立ちます。 プロキシクリエーター オブジェクトが逆シリアル化されると、逆シリアル化はその GetRealObject メソッドを呼び出します。 この時点で、プロキシ作成者オブジェクトは、元の実際のオブジェクト (おそらくリモート コンピューター) を参照するプロキシ オブジェクトの新しいインスタンスを作成します。 最後に、プロキシクリエーター オブジェクトは破棄され、後でガベージ コレクションによって再利用されます。

たとえば、オブジェクト Type シリアル化する方法を考えてみましょう。 システムは、 Type オブジェクトからデータを送信する代わりに、型オブジェクトの名前と、 IObjectReferenceを実装するオブジェクト内で見つかったアセンブリに関する情報を持つホルダー オブジェクトを送信します。 型名とアセンブリ名の両方を使用できる場合、逆シリアル化インフラストラクチャは、送信されたホルダー オブジェクトで GetRealObject を呼び出します。 このホルダーは、グラフに挿入された Type オブジェクトを返します。

適用対象