IObjectReference.GetRealObject(StreamingContext) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
返回应进行反序列化的真实对象(而不是序列化流指定的对象)。
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 插入到图形中的 对象。