Compartir a través de


ObjectManager.RegisterObject Método

Definición

Registra un objeto cuando se deserializa.

Sobrecargas

RegisterObject(Object, Int64)

Registra un objeto cuando se deserializa y lo asocia a objectID.

RegisterObject(Object, Int64, SerializationInfo)

Registra un objeto cuando se deserializa, lo asocia a objectID y registra el objeto SerializationInfo que se utilizó con el mismo.

RegisterObject(Object, Int64, SerializationInfo, Int64, MemberInfo)

Registra un miembro de un objeto cuando se deserializa, lo asocia a objectID y registra SerializationInfo.

RegisterObject(Object, Int64, SerializationInfo, Int64, MemberInfo, Int32[])

Registra un miembro de una matriz incluida en un objeto mientras se deserializa, lo asocia a objectID y registra SerializationInfo.

RegisterObject(Object, Int64)

Source:
ObjectManager.cs
Source:
ObjectManager.cs
Source:
ObjectManager.cs

Registra un objeto cuando se deserializa y lo asocia a objectID.

public:
 virtual void RegisterObject(System::Object ^ obj, long objectID);
public virtual void RegisterObject (object obj, long objectID);
[System.Security.SecurityCritical]
public virtual void RegisterObject (object obj, long objectID);
abstract member RegisterObject : obj * int64 -> unit
override this.RegisterObject : obj * int64 -> unit
[<System.Security.SecurityCritical>]
abstract member RegisterObject : obj * int64 -> unit
override this.RegisterObject : obj * int64 -> unit
Public Overridable Sub RegisterObject (obj As Object, objectID As Long)

Parámetros

obj
Object

Objeto que se va a registrar.

objectID
Int64

Identificador del objeto que se va a registrar.

Atributos

Excepciones

El parámetro obj es null.

El parámetro objectID es menor o igual que cero.

objectID ya se ha registrado para un objeto distinto de obj.

Comentarios

ObjectManager conserva información sobre el objeto y su identificador. Más adelante durante la deserialización, GetObject se puede usar para determinar si ya se ha deserializado un identificador de objeto determinado o si es una referencia directa a un objeto que aún no se ha deserializado.

Se aplica a

RegisterObject(Object, Int64, SerializationInfo)

Source:
ObjectManager.cs
Source:
ObjectManager.cs
Source:
ObjectManager.cs

Registra un objeto cuando se deserializa, lo asocia a objectID y registra el objeto SerializationInfo que se utilizó con el mismo.

public:
 void RegisterObject(System::Object ^ obj, long objectID, System::Runtime::Serialization::SerializationInfo ^ info);
public void RegisterObject (object obj, long objectID, System.Runtime.Serialization.SerializationInfo info);
[System.Security.SecurityCritical]
public void RegisterObject (object obj, long objectID, System.Runtime.Serialization.SerializationInfo info);
member this.RegisterObject : obj * int64 * System.Runtime.Serialization.SerializationInfo -> unit
[<System.Security.SecurityCritical>]
member this.RegisterObject : obj * int64 * System.Runtime.Serialization.SerializationInfo -> unit
Public Sub RegisterObject (obj As Object, objectID As Long, info As SerializationInfo)

Parámetros

obj
Object

Objeto que se va a registrar.

objectID
Int64

Identificador del objeto que se va a registrar.

info
SerializationInfo

Objeto SerializationInfo utilizado si obj implementa ISerializable o tiene un objeto ISerializationSurrogate. info se completará con la información de corrección necesaria y, a continuación, se pasará al objeto requerido cuando ese objeto se complete.

Atributos

Excepciones

El parámetro obj es null.

El parámetro objectID es menor o igual que cero.

objectID ya se ha registrado para un objeto distinto de obj.

Comentarios

ObjectManager conserva la información sobre el objeto y su identificador. Más adelante durante la deserialización, puede usar GetObject para detectar si ya se ha deserializado un identificador de objeto determinado o si es una referencia directa a un objeto que aún no se ha deserializado.

Se aplica a

RegisterObject(Object, Int64, SerializationInfo, Int64, MemberInfo)

Source:
ObjectManager.cs
Source:
ObjectManager.cs
Source:
ObjectManager.cs

Registra un miembro de un objeto cuando se deserializa, lo asocia a objectID y registra SerializationInfo.

public:
 void RegisterObject(System::Object ^ obj, long objectID, System::Runtime::Serialization::SerializationInfo ^ info, long idOfContainingObj, System::Reflection::MemberInfo ^ member);
public void RegisterObject (object obj, long objectID, System.Runtime.Serialization.SerializationInfo? info, long idOfContainingObj, System.Reflection.MemberInfo? member);
public void RegisterObject (object obj, long objectID, System.Runtime.Serialization.SerializationInfo info, long idOfContainingObj, System.Reflection.MemberInfo member);
[System.Security.SecurityCritical]
public void RegisterObject (object obj, long objectID, System.Runtime.Serialization.SerializationInfo info, long idOfContainingObj, System.Reflection.MemberInfo member);
member this.RegisterObject : obj * int64 * System.Runtime.Serialization.SerializationInfo * int64 * System.Reflection.MemberInfo -> unit
[<System.Security.SecurityCritical>]
member this.RegisterObject : obj * int64 * System.Runtime.Serialization.SerializationInfo * int64 * System.Reflection.MemberInfo -> unit
Public Sub RegisterObject (obj As Object, objectID As Long, info As SerializationInfo, idOfContainingObj As Long, member As MemberInfo)

Parámetros

obj
Object

Objeto que se va a registrar.

objectID
Int64

Identificador del objeto que se va a registrar.

info
SerializationInfo

Objeto SerializationInfo utilizado si obj implementa ISerializable o tiene un objeto ISerializationSurrogate. info se completará con la información de corrección necesaria y, a continuación, se pasará al objeto requerido cuando ese objeto se complete.

idOfContainingObj
Int64

Identificador del objeto que contiene obj. Este parámetro es obligatorio sólo si obj es un tipo de valor.

member
MemberInfo

Campo del objeto contenedor donde existe obj. Este parámetro tiene significado sólo si obj es un tipo de valor.

Atributos

Excepciones

El parámetro obj es null.

El parámetro objectID es menor o igual que cero.

objectID ya se ha registrado para un objeto distinto de obj, o member no es FieldInfo y member no es null.

Comentarios

Debe proporcionar los member parámetros y idOfContainingObj si obj es debido ValueType a la forma en que se realizan correcciones en ValueType objetos . El espacio para almacenar la información de un ValueType objeto se asigna en línea con su objeto contenedor. Sin embargo, cuando se va a registrar con , ValueTypeObjectManagerpierde la conexión con su objeto contenedor. Para garantizar que las correcciones se producen en la instancia del ValueType almacenado en el objeto contenedor y no en la instancia boxed, ObjectManager conserva información adicional.

ObjectManager conserva información sobre el objeto y su identificador. Más adelante durante la deserialización, GetObject se puede usar para detectar si ya se ha deserializado un identificador de objeto determinado o si es una referencia directa a un objeto aún no deserializado.

Se aplica a

RegisterObject(Object, Int64, SerializationInfo, Int64, MemberInfo, Int32[])

Source:
ObjectManager.cs
Source:
ObjectManager.cs
Source:
ObjectManager.cs

Registra un miembro de una matriz incluida en un objeto mientras se deserializa, lo asocia a objectID y registra SerializationInfo.

public:
 void RegisterObject(System::Object ^ obj, long objectID, System::Runtime::Serialization::SerializationInfo ^ info, long idOfContainingObj, System::Reflection::MemberInfo ^ member, cli::array <int> ^ arrayIndex);
public void RegisterObject (object obj, long objectID, System.Runtime.Serialization.SerializationInfo? info, long idOfContainingObj, System.Reflection.MemberInfo? member, int[]? arrayIndex);
public void RegisterObject (object obj, long objectID, System.Runtime.Serialization.SerializationInfo info, long idOfContainingObj, System.Reflection.MemberInfo member, int[] arrayIndex);
[System.Security.SecurityCritical]
public void RegisterObject (object obj, long objectID, System.Runtime.Serialization.SerializationInfo info, long idOfContainingObj, System.Reflection.MemberInfo member, int[] arrayIndex);
member this.RegisterObject : obj * int64 * System.Runtime.Serialization.SerializationInfo * int64 * System.Reflection.MemberInfo * int[] -> unit
[<System.Security.SecurityCritical>]
member this.RegisterObject : obj * int64 * System.Runtime.Serialization.SerializationInfo * int64 * System.Reflection.MemberInfo * int[] -> unit
Public Sub RegisterObject (obj As Object, objectID As Long, info As SerializationInfo, idOfContainingObj As Long, member As MemberInfo, arrayIndex As Integer())

Parámetros

obj
Object

Objeto que se va a registrar.

objectID
Int64

Identificador del objeto que se va a registrar.

info
SerializationInfo

Objeto SerializationInfo utilizado si obj implementa ISerializable o tiene un objeto ISerializationSurrogate. info se completará con la información de corrección necesaria y, a continuación, se pasará al objeto requerido cuando ese objeto se complete.

idOfContainingObj
Int64

Identificador del objeto que contiene obj. Este parámetro es obligatorio sólo si obj es un tipo de valor.

member
MemberInfo

Campo del objeto contenedor donde existe obj. Este parámetro tiene significado sólo si obj es un tipo de valor.

arrayIndex
Int32[]

Si obj es ValueType y miembro de una matriz, arrayIndex contiene el índice de la matriz donde existe obj. arrayIndex se pasa por alto si obj no es a la vez ValueType y miembro de una matriz.

Atributos

Excepciones

El parámetro obj es null.

El parámetro objectID es menor o igual que cero.

objectID ya se ha registrado para un objeto distinto de obj, o member no es FieldInfo y member no es null.

Comentarios

Debe proporcionar los member parámetros y idOfContainingObj si obj es debido ValueType a la forma en que se realizan correcciones en ValueType objetos . El espacio para almacenar la información de un ValueType objeto se asigna en línea con su objeto contenedor. Sin embargo, cuando se va a registrar con , ValueTypeObjectManagerpierde la conexión con su objeto contenedor. Para garantizar que las correcciones se producen en la instancia del ValueType almacenado en el objeto contenedor y no en la instancia boxed, ObjectManager conserva información adicional.

ObjectManager conserva información sobre el objeto y su identificador. Más adelante durante la deserialización, GetObject se puede usar para detectar si ya se ha deserializado un identificador de objeto determinado o si es una referencia directa a un objeto aún no deserializado.

Se aplica a