ObjectManager.RegisterObject Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Registra um objeto conforme ele é desserializado.
Sobrecargas
| Nome | Description |
|---|---|
| RegisterObject(Object, Int64) |
Registra um objeto conforme ele é desserializado, associando-o a |
| RegisterObject(Object, Int64, SerializationInfo) |
Registra um objeto conforme ele é desserializado, associando-o |
| RegisterObject(Object, Int64, SerializationInfo, Int64, MemberInfo) |
Registra um membro de um objeto conforme ele é desserializado, associando-o |
| RegisterObject(Object, Int64, SerializationInfo, Int64, MemberInfo, Int32[]) |
Registra um membro de uma matriz contida em um objeto enquanto ele é desserializado, associando-o |
RegisterObject(Object, Int64)
Registra um objeto conforme ele é desserializado, associando-o 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
O objeto a ser registrado.
- objectID
- Int64
A ID do objeto a ser registrado.
- Atributos
Exceções
O obj parâmetro é null.
O objectID parâmetro é menor ou igual a zero.
O objectID já foi registrado para um objeto diferente de obj.
Comentários
ObjectManager retém informações sobre o objeto e sua ID. Posteriormente, durante a desserialização, GetObject pode ser usado para determinar se uma ID de objeto específica já foi desserializada ou se é uma referência de encaminhamento a um objeto que ainda não foi desserializado.
Aplica-se a
RegisterObject(Object, Int64, SerializationInfo)
Registra um objeto conforme ele é desserializado, associando-o objectIDe gravando o SerializationInfo usado com ele.
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
O objeto a ser registrado.
- objectID
- Int64
A ID do objeto a ser registrado.
- info
- SerializationInfo
O SerializationInfo usado se obj implementa ISerializable ou tem um ISerializationSurrogate.
info será concluído com todas as informações de correção necessárias e, em seguida, passado para o objeto necessário quando esse objeto for concluído.
- Atributos
Exceções
O obj parâmetro é null.
O objectID parâmetro é menor ou igual a zero.
O objectID já foi registrado para um objeto diferente de obj.
Comentários
ObjectManager retém as informações sobre o objeto e sua ID. Posteriormente, durante a desserialização, você pode usar GetObject para descobrir se uma ID de objeto específica já foi desserializada ou se é uma referência de encaminhamento a um objeto que ainda não foi desserializado.
Aplica-se a
RegisterObject(Object, Int64, SerializationInfo, Int64, MemberInfo)
Registra um membro de um objeto conforme ele é desserializado, associando-o objectIDe gravando o 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
O objeto a ser registrado.
- objectID
- Int64
A ID do objeto a ser registrado.
- info
- SerializationInfo
O SerializationInfo usado se obj implementa ISerializable ou tem um ISerializationSurrogate.
info será concluído com todas as informações de correção necessárias e, em seguida, passado para o objeto necessário quando esse objeto for concluído.
- idOfContainingObj
- Int64
A ID do objeto que contém obj. Esse parâmetro será necessário somente se obj for um tipo de valor.
- member
- MemberInfo
O campo no objeto que contém onde obj existe. Esse parâmetro só terá significado se obj for um tipo de valor.
- Atributos
Exceções
O obj parâmetro é null.
O objectID parâmetro é menor ou igual a zero.
O objectID já foi registrado para um objeto diferente objde , ou member não é um FieldInfo e member não nullé .
Comentários
Você precisa fornecer os parâmetros e idOfContainingObj se memberobj for devido ValueType à maneira como as correções são executadas em ValueType objetos. O espaço para armazenar as informações de um ValueType é alocado embutido com seu objeto que contém. No entanto, quando o ValueType box está em caixa para ser registrado com o ObjectManager, ele perde a conexão com seu objeto que contém. Para garantir que as correções ocorram na instância do ValueType objeto armazenado no objeto que contém e não na instância em caixa, ela ObjectManager mantém algumas informações adicionais.
ObjectManager retém informações sobre o objeto e sua ID. Posteriormente, durante a desserialização, GetObject pode ser usado para descobrir se uma ID de objeto específica já foi desserializada ou se é uma referência de encaminhamento a um objeto ainda não desserializado.
Aplica-se a
RegisterObject(Object, Int64, SerializationInfo, Int64, MemberInfo, Int32[])
Registra um membro de uma matriz contida em um objeto enquanto ele é desserializado, associando-o objectIDa e gravando o 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
O objeto a ser registrado.
- objectID
- Int64
A ID do objeto a ser registrado.
- info
- SerializationInfo
O SerializationInfo usado se obj implementa ISerializable ou tem um ISerializationSurrogate.
info será concluído com todas as informações de correção necessárias e, em seguida, passado para o objeto necessário quando esse objeto for concluído.
- idOfContainingObj
- Int64
A ID do objeto que contém obj. Esse parâmetro será necessário somente se obj for um tipo de valor.
- member
- MemberInfo
O campo no objeto que contém onde obj existe. Esse parâmetro só terá significado se obj for um tipo de valor.
- arrayIndex
- Int32[]
Se obj for um ValueType membro e um membro de uma matriz, arrayIndex conterá o índice dentro dessa matriz onde obj existe.
arrayIndex será ignorado se obj não for um membro e um ValueType membro de uma matriz.
- Atributos
Exceções
O obj parâmetro é null.
O objectID parâmetro é menor ou igual a zero.
O objectID já foi registrado para um objeto diferente objde , ou member não é um FieldInfo e member não nullé .
Comentários
Você precisa fornecer os parâmetros e idOfContainingObj se memberobj for devido ValueType à maneira como as correções são executadas em ValueType objetos. O espaço para armazenar as informações de um ValueType é alocado embutido com seu objeto que contém. No entanto, quando o ValueType box está em caixa para ser registrado com o ObjectManager, ele perde a conexão com seu objeto que contém. Para garantir que as correções ocorram na instância do ValueType objeto armazenado no objeto que contém e não na instância em caixa, ela ObjectManager mantém algumas informações adicionais.
ObjectManager retém informações sobre o objeto e sua ID. Posteriormente, durante a desserialização, GetObject pode ser usado para descobrir se uma ID de objeto específica já foi desserializada ou se é uma referência de encaminhamento a um objeto ainda não desserializado.