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 呼び出します。 この時点で、proxy-creator オブジェクトはプロキシ オブジェクトの新しいインスタンスを作成します。このインスタンスは、元の実際のオブジェクト (おそらくリモート コンピューター上) を参照します。 最後に、プロキシ作成者オブジェクトは破棄され、後でガベージ コレクションによって再利用されます。

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

適用対象