ObjectManager.RegisterObject Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Rejestruje obiekt w postaci deserializacji.
Przeciążenia
RegisterObject(Object, Int64) |
Rejestruje obiekt w postaci deserializacji, kojarząc go z elementem |
RegisterObject(Object, Int64, SerializationInfo) |
Rejestruje obiekt podczas deserializacji, kojarząc go z elementem |
RegisterObject(Object, Int64, SerializationInfo, Int64, MemberInfo) |
Rejestruje element członkowski obiektu w postaci deserializacji, kojarząc go z elementem |
RegisterObject(Object, Int64, SerializationInfo, Int64, MemberInfo, Int32[]) |
Rejestruje element członkowski tablicy zawartej w obiekcie, gdy jest deserializowany, kojarząc go z elementem |
RegisterObject(Object, Int64)
- Źródło:
- ObjectManager.cs
- Źródło:
- ObjectManager.cs
- Źródło:
- ObjectManager.cs
Rejestruje obiekt w postaci deserializacji, kojarząc go z elementem 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)
Parametry
- obj
- Object
Obiekt do rejestracji.
- objectID
- Int64
Identyfikator obiektu do zarejestrowania.
- Atrybuty
Wyjątki
Parametr obj
ma wartość null
.
Parametr objectID
jest mniejszy lub równy zero.
Obiekt objectID
został już zarejestrowany dla obiektu innego niż obj
.
Uwagi
ObjectManager Zachowuje informacje o obiekcie i jego identyfikatorze. Później podczas deserializacji można określić, GetObject czy określony identyfikator obiektu został już zdeserializowany, czy też jest to odwołanie do obiektu, który nie został jeszcze zdeserializowany.
Dotyczy
RegisterObject(Object, Int64, SerializationInfo)
- Źródło:
- ObjectManager.cs
- Źródło:
- ObjectManager.cs
- Źródło:
- ObjectManager.cs
Rejestruje obiekt podczas deserializacji, kojarząc go z elementem objectID
i rejestrując SerializationInfo używany z nim.
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)
Parametry
- obj
- Object
Obiekt do rejestracji.
- objectID
- Int64
Identyfikator obiektu do zarejestrowania.
- info
- SerializationInfo
Używany SerializationInfo , jeśli obj
implementuje ISerializable lub ma wartość ISerializationSurrogate.
info
Zostanie ukończony z wszelkimi wymaganymi informacjami o poprawkach, a następnie przekazanym do wymaganego obiektu po zakończeniu tego obiektu.
- Atrybuty
Wyjątki
Parametr obj
ma wartość null
.
Parametr objectID
jest mniejszy lub równy zero.
Obiekt objectID
został już zarejestrowany dla obiektu innego niż obj
.
Uwagi
ObjectManager Zachowuje informacje o obiekcie i jego identyfikatorze. Później podczas deserializacji można GetObject sprawdzić, czy określony identyfikator obiektu został już zdeserializowany, czy też jest to odwołanie do obiektu, który nie został jeszcze zdeserializowany.
Dotyczy
RegisterObject(Object, Int64, SerializationInfo, Int64, MemberInfo)
- Źródło:
- ObjectManager.cs
- Źródło:
- ObjectManager.cs
- Źródło:
- ObjectManager.cs
Rejestruje element członkowski obiektu w postaci deserializacji, kojarząc go z elementem objectID
i rejestrując obiekt 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)
Parametry
- obj
- Object
Obiekt do rejestracji.
- objectID
- Int64
Identyfikator obiektu do zarejestrowania.
- info
- SerializationInfo
Używany SerializationInfo , jeśli obj
implementuje ISerializable lub ma wartość ISerializationSurrogate.
info
Zostanie ukończony z wszelkimi wymaganymi informacjami o poprawkach, a następnie przekazanym do wymaganego obiektu po zakończeniu tego obiektu.
- idOfContainingObj
- Int64
Identyfikator obiektu zawierającego obj
element . Ten parametr jest wymagany tylko wtedy, gdy obj
jest typem wartości.
- member
- MemberInfo
Pole w obiekcie zawierającym, gdzie obj
istnieje. Ten parametr ma znaczenie tylko wtedy, gdy obj
jest typem wartości.
- Atrybuty
Wyjątki
Parametr obj
ma wartość null
.
Parametr objectID
jest mniejszy lub równy zero.
Obiekt objectID
został już zarejestrowany dla obiektu innego niż obj
, lub member
nie jest obiektem FieldInfo i member
nie null
jest .
Uwagi
Należy podać member
parametry i idOfContainingObj
, jeśli obj
jest to ValueType spowodowane sposobem, w jaki poprawki są wykonywane na ValueType obiektach. Miejsce do przechowywania informacji dla obiektu ValueType jest przydzielane śródwierszowe z jego obiektem zawierającym. Jeśli ValueType jednak pole jest zarejestrowane w ObjectManagerobiekcie , utraci połączenie z jego obiektem zawierającym. Aby zagwarantować, że poprawki występują w wystąpieniu przechowywanego ValueType w obiekcie zawierającym, a nie w wystąpieniu skrzynkowym, ObjectManager zachowuje dodatkowe informacje.
ObjectManager Zachowuje informacje o obiekcie i jego identyfikatorze. Później podczas deserializacji można sprawdzić, GetObject czy określony identyfikator obiektu został już zdeserializowany, czy też jest to odwołanie do obiektu, które nie zostało jeszcze zdeserializowane.
Dotyczy
RegisterObject(Object, Int64, SerializationInfo, Int64, MemberInfo, Int32[])
- Źródło:
- ObjectManager.cs
- Źródło:
- ObjectManager.cs
- Źródło:
- ObjectManager.cs
Rejestruje element członkowski tablicy zawartej w obiekcie, gdy jest deserializowany, kojarząc go z elementem objectID
i rejestrując element 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())
Parametry
- obj
- Object
Obiekt do rejestracji.
- objectID
- Int64
Identyfikator obiektu do zarejestrowania.
- info
- SerializationInfo
Używany SerializationInfo , jeśli obj
implementuje ISerializable lub ma wartość ISerializationSurrogate.
info
Zostanie ukończony z wszelkimi wymaganymi informacjami o poprawkach, a następnie przekazanym do wymaganego obiektu po zakończeniu tego obiektu.
- idOfContainingObj
- Int64
Identyfikator obiektu zawierającego obj
element . Ten parametr jest wymagany tylko wtedy, gdy obj
jest typem wartości.
- member
- MemberInfo
Pole w obiekcie zawierającym, gdzie obj
istnieje. Ten parametr ma znaczenie tylko wtedy, gdy obj
jest typem wartości.
- arrayIndex
- Int32[]
Jeśli obj
jest elementem ValueType i elementem członkowskim tablicy, zawiera indeks w tej tablicy, arrayIndex
w której obj
istnieje.
arrayIndex
Element jest ignorowany, jeśli obj
nie jest zarówno elementem, jak ValueType i elementem członkowskim tablicy.
- Atrybuty
Wyjątki
Parametr obj
ma wartość null
.
Parametr objectID
jest mniejszy lub równy zero.
Obiekt objectID
został już zarejestrowany dla obiektu innego niż obj
, lub member
nie jest elementem FieldInfo i member
nie null
jest .
Uwagi
Należy podać member
parametry i idOfContainingObj
, jeśli obj
jest to ValueType spowodowane sposobem, w jaki poprawki są wykonywane na ValueType obiektach. Miejsce do przechowywania informacji dla obiektu ValueType jest przydzielane śródwierszowe z jego obiektem zawierającym. Jeśli ValueType jednak pole jest zarejestrowane w ObjectManagerobiekcie , utraci połączenie z jego obiektem zawierającym. Aby zagwarantować, że poprawki występują w wystąpieniu przechowywanego ValueType w obiekcie zawierającym, a nie w wystąpieniu skrzynkowym, ObjectManager zachowuje dodatkowe informacje.
ObjectManager Zachowuje informacje o obiekcie i jego identyfikatorze. Później podczas deserializacji można sprawdzić, GetObject czy określony identyfikator obiektu został już zdeserializowany, czy też jest to odwołanie do obiektu, które nie zostało jeszcze zdeserializowane.