Partager via


ObjectManager.RegisterObject Méthode

Définition

Inscrit un objet lors de sa désérialisation.

Surcharges

RegisterObject(Object, Int64)

Inscrit un objet lors de sa désérialisation, en l'associant à objectID.

RegisterObject(Object, Int64, SerializationInfo)

Inscrit un objet lors de sa désérialisation, en l'associant à objectID et en enregistrant SerializationInfo utilisé avec celui-ci.

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

Inscrit un membre d'un objet lors de sa désérialisation, en l'associant à objectID et en enregistrant SerializationInfo.

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

Inscrit un membre d'un tableau contenu dans un objet lors de sa désérialisation, en l'associant à objectID et en enregistrant SerializationInfo.

RegisterObject(Object, Int64)

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

Inscrit un objet lors de sa désérialisation, en l'associant à 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)

Paramètres

obj
Object

Objet à inscrire.

objectID
Int64

ID de l'objet à inscrire.

Attributs

Exceptions

Le paramètre obj a la valeur null.

Le paramètre objectID est inférieur ou égal à zéro.

objectID a déjà été inscrit pour un objet autre que obj.

Remarques

ObjectManager conserve des informations sur l’objet et son ID. Plus tard, pendant la désérialisation, GetObject vous pouvez utiliser pour déterminer si un ID d’objet particulier a déjà été désérialisé, ou s’il s’agit d’une référence avant à un objet qui n’a pas encore été désérialisé.

S’applique à

RegisterObject(Object, Int64, SerializationInfo)

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

Inscrit un objet lors de sa désérialisation, en l'associant à objectID et en enregistrant SerializationInfo utilisé avec celui-ci.

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)

Paramètres

obj
Object

Objet à inscrire.

objectID
Int64

ID de l'objet à inscrire.

info
SerializationInfo

SerializationInfo utilisé si obj implémente ISerializable ou a un ISerializationSurrogate. info sera complété avec toutes les informations de correction nécessaires, puis passé à l'objet requis quand cet objet sera terminé.

Attributs

Exceptions

Le paramètre obj a la valeur null.

Le paramètre objectID est inférieur ou égal à zéro.

objectID a déjà été inscrit pour un objet autre que obj.

Remarques

ObjectManager conserve les informations sur l’objet et son ID. Plus tard, pendant la désérialisation, vous pouvez utiliser GetObject pour découvrir si un ID d’objet particulier a déjà été désérialisé, ou s’il s’agit d’une référence avant à un objet qui n’a pas encore été désérialisé.

S’applique à

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

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

Inscrit un membre d'un objet lors de sa désérialisation, en l'associant à objectID et en enregistrant 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)

Paramètres

obj
Object

Objet à inscrire.

objectID
Int64

ID de l'objet à inscrire.

info
SerializationInfo

SerializationInfo utilisé si obj implémente ISerializable ou a un ISerializationSurrogate. info sera complété avec toutes les informations de correction nécessaires, puis passé à l'objet requis quand cet objet sera terminé.

idOfContainingObj
Int64

ID de l'objet qui contient obj. Ce paramètre n'est requis que si obj est un type valeur.

member
MemberInfo

Champ dans l'objet conteneur où obj existe. Ce paramètre n'a une signification que si obj est un type valeur.

Attributs

Exceptions

Le paramètre obj a la valeur null.

Le paramètre objectID est inférieur ou égal à zéro.

objectID a déjà été inscrit pour un objet différent de obj, ou member n'est pas un FieldInfo et member n'est pas null.

Remarques

Vous devez fournir les member paramètres et idOfContainingObj si obj est un ValueType en raison de la façon dont les correctifs sont effectués sur ValueType les objets. L’espace pour stocker les informations d’un ValueType est alloué en ligne avec son objet contenant. Toutefois, lorsque le ValueType est boxé pour être inscrit auprès de , ObjectManageril perd la connexion avec son objet contenant. Pour garantir que des corrections se produisent dans le instance de l’objet ValueType contenant et non dans la boîte instance, le ObjectManager conserve quelques informations supplémentaires.

ObjectManager conserve des informations sur l’objet et son ID. Plus tard, pendant la désérialisation, GetObject vous pouvez utiliser pour découvrir si un ID d’objet particulier a déjà été désérialisé ou s’il s’agit d’une référence avant à un objet qui n’est pas encore désérialisé.

S’applique à

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

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

Inscrit un membre d'un tableau contenu dans un objet lors de sa désérialisation, en l'associant à objectID et en enregistrant 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())

Paramètres

obj
Object

Objet à inscrire.

objectID
Int64

ID de l'objet à inscrire.

info
SerializationInfo

SerializationInfo utilisé si obj implémente ISerializable ou a un ISerializationSurrogate. info sera complété avec toutes les informations de correction nécessaires, puis passé à l'objet requis quand cet objet sera terminé.

idOfContainingObj
Int64

ID de l'objet qui contient obj. Ce paramètre n'est requis que si obj est un type valeur.

member
MemberInfo

Champ dans l'objet conteneur où obj existe. Ce paramètre n'a une signification que si obj est un type valeur.

arrayIndex
Int32[]

Si obj est un ValueType et un membre d'un tableau, arrayIndex contient l'index de ce tableau où obj existe. arrayIndex est ignoré si obj n'est pas à la fois un ValueType et un membre d'un tableau.

Attributs

Exceptions

Le paramètre obj a la valeur null.

Le paramètre objectID est inférieur ou égal à zéro.

objectID a déjà été inscrit pour un objet différent de obj, ou member n'est pas un FieldInfo et member n'est pas null.

Remarques

Vous devez fournir les member paramètres et idOfContainingObj si obj est un ValueType en raison de la façon dont les correctifs sont effectués sur ValueType les objets. L’espace pour stocker les informations d’un ValueType est alloué en ligne avec son objet contenant. Toutefois, lorsque le ValueType est boxé pour être inscrit auprès de , ObjectManageril perd la connexion avec son objet contenant. Pour garantir que des corrections se produisent dans le instance de l’objet ValueType contenant et non dans la boîte instance, le ObjectManager conserve quelques informations supplémentaires.

ObjectManager conserve des informations sur l’objet et son ID. Plus tard, pendant la désérialisation, GetObject vous pouvez utiliser pour découvrir si un ID d’objet particulier a déjà été désérialisé ou s’il s’agit d’une référence avant à un objet qui n’est pas encore désérialisé.

S’applique à