ObjectManager.RegisterObject Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Registra un oggetto come se fosse deserializzato.
Overload
RegisterObject(Object, Int64) |
Registra un oggetto come se fosse deserializzato, associandolo a |
RegisterObject(Object, Int64, SerializationInfo) |
Registra un oggetto come se fosse deserializzato, associandolo a |
RegisterObject(Object, Int64, SerializationInfo, Int64, MemberInfo) |
Registra un membro di un oggetto come se fosse deserializzato, associandolo a |
RegisterObject(Object, Int64, SerializationInfo, Int64, MemberInfo, Int32[]) |
Registra un membro di una matrice contenuta in un oggetto durante la deserializzazione, associandolo a |
RegisterObject(Object, Int64)
- Origine:
- ObjectManager.cs
- Origine:
- ObjectManager.cs
- Origine:
- ObjectManager.cs
Registra un oggetto come se fosse deserializzato, associandolo 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)
Parametri
- obj
- Object
Oggetto da registrare.
- objectID
- Int64
ID dell'oggetto da registrare.
- Attributi
Eccezioni
Il valore del parametro obj
è null
.
Il parametro objectID
è minore o uguale a zero.
Il parametro objectID
è già stato registrato per un oggetto diverso da obj
Commenti
ObjectManager mantiene informazioni sull'oggetto e sul relativo ID. Successivamente durante la deserializzazione, GetObject può essere usato per determinare se è già stato deserializzato un ID oggetto specifico o se si tratta di un riferimento in avanti a un oggetto che non è ancora stato deserializzato.
Si applica a
RegisterObject(Object, Int64, SerializationInfo)
- Origine:
- ObjectManager.cs
- Origine:
- ObjectManager.cs
- Origine:
- ObjectManager.cs
Registra un oggetto come se fosse deserializzato, associandolo a objectID
e registrando l'oggetto SerializationInfo utilizzato.
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)
Parametri
- obj
- Object
Oggetto da registrare.
- objectID
- Int64
ID dell'oggetto da registrare.
- info
- SerializationInfo
SerializationInfo utilizzato se obj
implementa ISerializable o dispone di ISerializationSurrogate.
info
verrà completato con le informazioni relative a eventuali correzioni necessarie, quindi verrà passato all'oggetto richiesto quando tale oggetto sarà stato completato.
- Attributi
Eccezioni
Il valore del parametro obj
è null
.
Il parametro objectID
è minore o uguale a zero.
Il parametro objectID
è già stato registrato per un oggetto diverso da obj
Commenti
ObjectManager mantiene le informazioni sull'oggetto e sul relativo ID. Successivamente durante la deserializzazione, è possibile usare GetObject per individuare se è già stato deserializzato un ID oggetto specifico o se si tratta di un riferimento in avanti a un oggetto che non è ancora stato deserializzato.
Si applica a
RegisterObject(Object, Int64, SerializationInfo, Int64, MemberInfo)
- Origine:
- ObjectManager.cs
- Origine:
- ObjectManager.cs
- Origine:
- ObjectManager.cs
Registra un membro di un oggetto come se fosse deserializzato, associandolo a objectID
e registrando l'oggetto 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)
Parametri
- obj
- Object
Oggetto da registrare.
- objectID
- Int64
ID dell'oggetto da registrare.
- info
- SerializationInfo
SerializationInfo utilizzato se obj
implementa ISerializable o dispone di ISerializationSurrogate.
info
verrà completato con le informazioni relative a eventuali correzioni necessarie, quindi verrà passato all'oggetto richiesto quando tale oggetto sarà stato completato.
- idOfContainingObj
- Int64
ID dell'oggetto che contiene obj
. Questo parametro è richiesto solo se obj
è un tipo di valore.
- member
- MemberInfo
Campo dell'oggetto contenente in cui esiste obj
. Questo parametro è significativo solo se obj
è un tipo di valore.
- Attributi
Eccezioni
Il valore del parametro obj
è null
.
Il parametro objectID
è minore o uguale a zero.
Il parametro objectID
è già stato registrato per un oggetto diverso da obj
oppure member
non corrisponde a un oggetto FieldInfo e member
non è null
.
Commenti
È necessario specificare i member
parametri e idOfContainingObj
se obj
è un ValueType a causa del modo in cui vengono eseguite le correzioni sugli ValueType oggetti. Lo spazio per archiviare le informazioni per un ValueType oggetto viene allocato inline con il relativo oggetto contenente. Tuttavia, quando la ValueType casella viene registrata con ObjectManager, perde la connessione con il relativo oggetto contenente. Per garantire che le correzioni si verifichino nell'istanza dell'oggetto ValueType archiviato nell'oggetto contenente e non nell'istanza boxed, l'oggetto ObjectManager mantiene alcune informazioni aggiuntive.
ObjectManager mantiene informazioni sull'oggetto e sul relativo ID. Successivamente durante la deserializzazione, GetObject è possibile usare per individuare se è già stato deserializzato un ID oggetto specifico o se si tratta di un riferimento in avanti a un oggetto non ancora deserializzato.
Si applica a
RegisterObject(Object, Int64, SerializationInfo, Int64, MemberInfo, Int32[])
- Origine:
- ObjectManager.cs
- Origine:
- ObjectManager.cs
- Origine:
- ObjectManager.cs
Registra un membro di una matrice contenuta in un oggetto durante la deserializzazione, associandolo a objectID
e registrando l'oggetto 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())
Parametri
- obj
- Object
Oggetto da registrare.
- objectID
- Int64
ID dell'oggetto da registrare.
- info
- SerializationInfo
SerializationInfo utilizzato se obj
implementa ISerializable o dispone di ISerializationSurrogate.
info
verrà completato con le informazioni relative a eventuali correzioni necessarie, quindi verrà passato all'oggetto richiesto quando tale oggetto sarà stato completato.
- idOfContainingObj
- Int64
ID dell'oggetto che contiene obj
. Questo parametro è richiesto solo se obj
è un tipo di valore.
- member
- MemberInfo
Campo dell'oggetto contenente in cui esiste obj
. Questo parametro è significativo solo se obj
è un tipo di valore.
- arrayIndex
- Int32[]
Se obj
è un oggetto ValueType e un membro di una matrice, arrayIndex
contiene l'indice all'interno della matrice in cui esiste obj
.
arrayIndex
viene ignorato se obj
non è sia un oggetto ValueType che un membro di una matrice.
- Attributi
Eccezioni
Il valore del parametro obj
è null
.
Il parametro objectID
è minore o uguale a zero.
Il parametro objectID
è già stato registrato per un oggetto diverso da obj
oppure member
non è un FieldInfo e member
non è null
.
Commenti
È necessario specificare i member
parametri e idOfContainingObj
se obj
è un ValueType a causa del modo in cui vengono eseguite le correzioni sugli ValueType oggetti. Lo spazio per archiviare le informazioni per un ValueType oggetto viene allocato inline con il relativo oggetto contenente. Tuttavia, quando la ValueType casella viene registrata con ObjectManager, perde la connessione con il relativo oggetto contenente. Per garantire che le correzioni si verifichino nell'istanza dell'oggetto ValueType archiviato nell'oggetto contenente e non nell'istanza boxed, l'oggetto ObjectManager mantiene alcune informazioni aggiuntive.
ObjectManager mantiene informazioni sull'oggetto e sul relativo ID. Successivamente durante la deserializzazione, GetObject è possibile usare per individuare se è già stato deserializzato un ID oggetto specifico o se si tratta di un riferimento in avanti a un oggetto non ancora deserializzato.