ObjectManager::RegisterObject Method (Object^, Int64, SerializationInfo^)
Registers an object as it is deserialized, associating it with objectID, and recording the SerializationInfo used with it.
Assembly: mscorlib (in mscorlib.dll)
public: [SecurityCriticalAttribute] void RegisterObject( Object^ obj, long long objectID, SerializationInfo^ info )
Parameters
- obj
-
Type:
System::Object^
The object to register.
- objectID
-
Type:
System::Int64
The ID of the object to register.
- info
-
Type:
System.Runtime.Serialization::SerializationInfo^
The SerializationInfo used if obj implements ISerializable or has a ISerializationSurrogate. info will be completed with any required fixup information and then passed to the required object when that object is completed.
| Exception | Condition |
|---|---|
| ArgumentNullException | The obj parameter is null. |
| ArgumentOutOfRangeException | The objectID parameter is less than or equal to zero. |
| SerializationException | The objectID has already been registered for an object other than obj. |
ObjectManager retains the information about both the object and its ID. Later during deserialization, you can use GetObject to discover whether a particular object ID has already been deserialized, or if it is a forward reference to an object that has not yet been deserialized.
Available since 1.1