Sdílet prostřednictvím


IObjectReference.GetRealObject(StreamingContext) Metoda

Definice

Vrátí skutečný objekt, který by měl být deserializován, spíše než objekt, který serializovaný datový proud určuje.

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

Parametry

context
StreamingContext

Ze StreamingContext kterého je aktuální objekt deserializován.

Návraty

Skutečný objekt, který je vložen do grafu.

Atributy

Výjimky

Volající nemá požadované oprávnění. Volání nebude fungovat na středně důvěryhodném serveru.

Poznámky

Tato metoda je užitečná v situaci vzdálené komunikace, kdy serializujete objekt proxy-creator, nikoli skutečný objekt. Když je objekt proxy-creator deserializován, deserializace volá jeho GetRealObject metodu. V tomto okamžiku objekt proxy-creator vytvoří novou instanci objektu proxy, která odkazuje zpět na původní skutečný objekt, například ve vzdáleném počítači. Nakonec se objekt proxy-creator zahodí a později uvolní uvolňováním paměti.

Zvažte například, jak Type jsou objekty serializovány. Místo přenosu dat z objektu Type systém přenáší objekt držitele s názvem objektu typu a informacemi o sestavení, kde je nalezen v objektu implementující IObjectReference. Pokud je k dispozici název typu i název sestavení, volání GetRealObject infrastruktury deserializace na objektu holder, který byl přenesen. Tento držitel vrátí Type objekt vložený do grafu.

Platí pro