ObjectManager.RegisterObject Methode

Definitie

Registreert een object omdat het wordt gedeserialiseerd.

Overloads

Name Description
RegisterObject(Object, Int64)

Registreert een object omdat het gedeserialiseerd is, waarbij het wordt gekoppeld aan objectID.

RegisterObject(Object, Int64, SerializationInfo)

Registreert een object omdat het gedeserialiseerd is, koppelt aan het objectIDobject en registreert het SerializationInfo gebruikte object.

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

Registreert een lid van een object omdat het wordt gedeserialiseerd, gekoppeld aan objectIDen het opnemen van de SerializationInfo.

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

Registreert een lid van een matrix in een object terwijl het wordt gedeserialiseerd, gekoppeld aan objectIDen het opnemen van de SerializationInfo.

RegisterObject(Object, Int64)

Registreert een object omdat het gedeserialiseerd is, waarbij het wordt gekoppeld aan 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)

Parameters

obj
Object

Het object dat moet worden geregistreerd.

objectID
Int64

De id van het object dat moet worden geregistreerd.

Kenmerken

Uitzonderingen

De obj parameter is null.

De objectID parameter is kleiner dan of gelijk aan nul.

De objectID is al geregistreerd voor een ander object dan obj.

Opmerkingen

ObjectManager bewaart informatie over zowel het object als de bijbehorende id. Later tijdens de deserialisatie GetObject kan worden gebruikt om te bepalen of een bepaalde object-id al is gedeserialiseerd, of het een doorstuurverwijzing is naar een object dat nog niet is gedeserialiseerd.

Van toepassing op

RegisterObject(Object, Int64, SerializationInfo)

Registreert een object omdat het gedeserialiseerd is, koppelt aan het objectIDobject en registreert het SerializationInfo gebruikte object.

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)

Parameters

obj
Object

Het object dat moet worden geregistreerd.

objectID
Int64

De id van het object dat moet worden geregistreerd.

info
SerializationInfo

De SerializationInfo gebruikte als obj implementeert ISerializable of een ISerializationSurrogate. info wordt voltooid met alle vereiste fixup-informatie en wordt vervolgens doorgegeven aan het vereiste object wanneer dat object is voltooid.

Kenmerken

Uitzonderingen

De obj parameter is null.

De objectID parameter is kleiner dan of gelijk aan nul.

De objectID is al geregistreerd voor een ander object dan obj.

Opmerkingen

ObjectManager behoudt de informatie over zowel het object als de bijbehorende id. Later tijdens deserialisatie kunt u gebruiken GetObject om te ontdekken of een bepaalde object-id al is gedeserialiseerd of als het een doorstuurverwijzing is naar een object dat nog niet is gedeserialiseerd.

Van toepassing op

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

Registreert een lid van een object omdat het wordt gedeserialiseerd, gekoppeld aan objectIDen het opnemen van de 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)

Parameters

obj
Object

Het object dat moet worden geregistreerd.

objectID
Int64

De id van het object dat moet worden geregistreerd.

info
SerializationInfo

De SerializationInfo gebruikte als obj implementeert ISerializable of een ISerializationSurrogate. info wordt voltooid met alle vereiste fixup-informatie en wordt vervolgens doorgegeven aan het vereiste object wanneer dat object is voltooid.

idOfContainingObj
Int64

De id van het object dat het bevat obj. Deze parameter is alleen vereist als obj dit een waardetype is.

member
MemberInfo

Het veld in het bijbehorende object waar obj aanwezig is. Deze parameter heeft alleen betekenis als obj dit een waardetype is.

Kenmerken

Uitzonderingen

De obj parameter is null.

De objectID parameter is kleiner dan of gelijk aan nul.

De objectID is al geregistreerd voor een ander object dan obj, of member is niet een FieldInfo en member niet null.

Opmerkingen

U moet de member en idOfContainingObj parameters opgeven als obj dit een ValueType gevolg is van de manier waarop fixups worden uitgevoerd op ValueType objecten. De ruimte voor het opslaan van de informatie voor een ValueType wordt inline toegewezen met het bijbehorende object. Wanneer het ValueType vak wordt geregistreerd bij de ObjectManager, verliest het echter de verbinding met het bijbehorende object. Om ervoor te zorgen dat fixups plaatsvinden in het exemplaar van het ValueType opgeslagen in het betreffende object en niet in het vakexemplaren, behoudt het ObjectManager enkele aanvullende informatie.

ObjectManager bewaart informatie over zowel het object als de bijbehorende id. Later tijdens de deserialisatie kan worden gebruikt om te ontdekken of een bepaalde object-id al is gedeserialiseerd of dat het een doorstuurverwijzing GetObject naar een object is dat nog niet gedeserialiseerd is.

Van toepassing op

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

Registreert een lid van een matrix in een object terwijl het wordt gedeserialiseerd, gekoppeld aan objectIDen het opnemen van de 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())

Parameters

obj
Object

Het object dat moet worden geregistreerd.

objectID
Int64

De id van het object dat moet worden geregistreerd.

info
SerializationInfo

De SerializationInfo gebruikte als obj implementeert ISerializable of een ISerializationSurrogate. info wordt voltooid met alle vereiste fixup-informatie en wordt vervolgens doorgegeven aan het vereiste object wanneer dat object is voltooid.

idOfContainingObj
Int64

De id van het object dat het bevat obj. Deze parameter is alleen vereist als obj dit een waardetype is.

member
MemberInfo

Het veld in het bijbehorende object waar obj aanwezig is. Deze parameter heeft alleen betekenis als obj dit een waardetype is.

arrayIndex
Int32[]

Als obj dit een ValueType en een lid is van een matrix, arrayIndex bevat deze de index in die matrix waar obj deze bestaat. arrayIndex wordt genegeerd als obj dit niet zowel een als ValueType een lid is van een matrix.

Kenmerken

Uitzonderingen

De obj parameter is null.

De objectID parameter is kleiner dan of gelijk aan nul.

De objectID is al geregistreerd voor een ander object dan obj, of member is niet een FieldInfo en member is niet null.

Opmerkingen

U moet de member en idOfContainingObj parameters opgeven als obj dit een ValueType gevolg is van de manier waarop fixups worden uitgevoerd op ValueType objecten. De ruimte voor het opslaan van de informatie voor een ValueType wordt inline toegewezen met het bijbehorende object. Wanneer het ValueType vak wordt geregistreerd bij de ObjectManager, verliest het echter de verbinding met het bijbehorende object. Om ervoor te zorgen dat fixups plaatsvinden in het exemplaar van het ValueType opgeslagen in het betreffende object en niet in het vakexemplaren, behoudt het ObjectManager enkele aanvullende informatie.

ObjectManager bewaart informatie over zowel het object als de bijbehorende id. Later tijdens de deserialisatie kan worden gebruikt om te ontdekken of een bepaalde object-id al is gedeserialiseerd of dat het een doorstuurverwijzing GetObject naar een object is dat nog niet gedeserialiseerd is.

Van toepassing op