ObjectManager.RegisterObject Método

Definición

Registra un objeto a medida que se deserializa.

Sobrecargas

Nombre Description
RegisterObject(Object, Int64)

Registra un objeto tal como está deserializado, asociándolo a objectID.

RegisterObject(Object, Int64, SerializationInfo)

Registra un objeto a medida que se deserializa, lo asocia a objectIDy graba el SerializationInfo objeto utilizado con él.

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

Registra un miembro de un objeto a medida que se deserializa, lo asocia a objectIDy graba .SerializationInfo

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

Registra un miembro de una matriz contenida en un objeto mientras se deserializa, lo asocia a objectIDy graba .SerializationInfo

RegisterObject(Object, Int64)

Registra un objeto tal como está deserializado, asociándolo 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 obj parámetro es null.

El objectID parámetro 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 se trata de una referencia directa a un objeto que aún no se ha deserializado.

Se aplica a

RegisterObject(Object, Int64, SerializationInfo)

Registra un objeto a medida que se deserializa, lo asocia a objectIDy graba el SerializationInfo objeto utilizado con él.

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

que SerializationInfo se usa si obj implementa ISerializable o tiene .ISerializationSurrogate info se completará con cualquier información de corrección necesaria y, a continuación, se pasará al objeto necesario cuando se complete ese objeto.

Atributos

Excepciones

El obj parámetro es null.

El objectID parámetro 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)

Registra un miembro de un objeto a medida que se deserializa, lo asocia a objectIDy graba .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);
[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

que SerializationInfo se usa si obj implementa ISerializable o tiene .ISerializationSurrogate info se completará con cualquier información de corrección necesaria y, a continuación, se pasará al objeto necesario cuando se complete ese objeto.

idOfContainingObj
Int64

Identificador del objeto que contiene obj. Este parámetro solo es necesario si obj es un tipo de valor.

member
MemberInfo

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

Atributos

Excepciones

El obj parámetro es null.

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

objectID El objeto ya se ha registrado para un objeto distinto objde , o member no es y memberFieldInfo no nulles .

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 ValueType , ObjectManagerpierde 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 se trata de una referencia directa a un objeto que aún no está deserializado.

Se aplica a

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

Registra un miembro de una matriz contenida en un objeto mientras se deserializa, lo asocia a objectIDy graba .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);
[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

que SerializationInfo se usa si obj implementa ISerializable o tiene .ISerializationSurrogate info se completará con cualquier información de corrección necesaria y, a continuación, se pasará al objeto necesario cuando se complete ese objeto.

idOfContainingObj
Int64

Identificador del objeto que contiene obj. Este parámetro solo es necesario si obj es un tipo de valor.

member
MemberInfo

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

arrayIndex
Int32[]

Si obj es y ValueType un miembro de una matriz, arrayIndex contiene el índice dentro de esa matriz donde obj existe. arrayIndex se omite si obj no es un ValueType miembro y de una matriz.

Atributos

Excepciones

El obj parámetro es null.

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

objectID El objeto ya se ha registrado para un objeto distinto objde , o member no es y memberFieldInfo no nulles .

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 ValueType , ObjectManagerpierde 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 se trata de una referencia directa a un objeto que aún no está deserializado.

Se aplica a