mscorlib [00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00] 1.0.5000.0 2.0.0.0 4.0.0.0 Gtk# is thread aware, but not thread safe; See the <link location="node:gtk-sharp/programming/threads">Gtk# Thread Programming</link> for details. System.Object System.Runtime.InteropServices.ComVisible(true)

This class is used by objects with custom serialization behavior. The method on either or populates the store with the name, type, and value of each piece of information it wants to serialize. During deserialization, the appropriate function can extract this information.

Objects are added to the store at serialization time using the methods and extracted from the store at deserialization using the methods.

For more information about customizing serialization, see [<topic://cpconCustomSerialization>].

Stores all the data needed to serialize or deserialize an object. This class cannot be inherited.

- Constructor
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.CLSCompliant(false)

  The passed as the parameter converts data from its internal representation to the form the user requested. The internal representation of the data within the depends on the formatter that created it.

  Creates a new instance of the class.

  The of the object to serialize.
  The used during deserialization.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void `` ``

  If two values are added with names that differ only by case, no exception will be thrown, which is not a recommended practice. However, adding two values with the exact same name will cause the to be thrown. For example:

  `void ISerializable.GetObject(SerializationInfo info, StreamingContext context) { // This will not cause an exception to be thrown. info.AddValue("ABC", true); info.AddValue("abc", false); // However, this will cause the SerializationException to be thrown. info.AddValue("XYZ", true); info.AddValue("XYZ", false); }` `Private Sub GetObjectData(ByVal info As SerializationInfo, _ ByVal context As StreamingContext) ' This will not cause an exception to be thrown. info.AddValue("ABC", "upper case") info.AddValue("abc", "lower case") ' However, this will cause the SerializationException to be thrown. info.AddValue("XYZ", "same case") info.AddValue("XYZ", "same case") End Sub`

  Adds a Boolean value into the store.

  The name to associate with the value, so it can be deserialized later. The Boolean value to serialize.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void `` ``

  If two values are added with names that differ only by case, no exception will be thrown, which is not a recommended practice. However, adding two values with the exact same name will cause the to be thrown.

  Adds an 8-bit unsigned integer value into the store.

  The name to associate with the value, so it can be deserialized later. The byte value to serialize.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void `` ``

  If two values are added with names that differ only by case, no exception will be thrown, which is not a recommended practice. However, adding two values with the exact same name will cause the to be thrown.

  Adds a Unicode character value into the store.

  The name to associate with the value, so it can be deserialized later. The character value to serialize.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void `` ``

  If two values are added with names that differ only by case, no exception will be thrown, which is not a recommended practice. However, adding two values with the exact same name will cause the to be thrown.

  Adds a value into the store.

  The name to associate with the value, so it can be deserialized later. The value to serialize.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void `` ``

  If two values are added with names that differ only by case, no exception will be thrown, which is not a recommended practice. However, adding two values with the exact same name will cause the to be thrown.

  Adds a decimal value into the store.

  The name to associate with the value, so it can be deserialized later. The decimal value to serialize.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void `` ``

  If two values are added with names that differ only by case, no exception will be thrown, which is not a recommended practice. However, adding two values with the exact same name will cause the to be thrown.

  Adds a double-precision floating-point value into the store.

  The name to associate with the value, so it can be deserialized later. The double value to serialize.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void `` ``

  If two values are added with names that differ only by case, no exception will be thrown, which is not a recommended practice. However, adding two values with the exact same name will cause the to be thrown.

  Adds a 16-bit signed integer value into the store.

  The name to associate with the value, so it can be deserialized later. The Int16 value to serialize.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void `` ``

  If two values are added with names that differ only by case, no exception will be thrown, which is not a recommended practice. However, adding two values with the exact same name will cause the to be thrown.

  Adds a 32-bit signed integer value into the store.

  The name to associate with the value, so it can be deserialized later. The Int32 value to serialize.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void `` ``

  If two values are added with names that differ only by case, no exception will be thrown, which is not a recommended practice. However, adding two values with the exact same name will cause the to be thrown.

  Adds a 64-bit signed integer value into the store.

  The name to associate with the value, so it can be deserialized later. The Int64 value to serialize.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void `` ``

  The object contained in the parameter is serialized as the type returned by .

  If two values are added with names that differ only by case, no exception will be thrown, which is not a recommended practice. However, adding two values with the exact same name will cause the to be thrown.

  Adds the specified object into the store, where it is associated with a specified name.

  The name to associate with the value, so it can be deserialized later. The value to be serialized. Any children of this object will automatically be serialized.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.CLSCompliant(false)
  System.Void `` ``

  If two values are added with names that differ only by case, no exception will be thrown, which is not a recommended practice. However, adding two values with the exact same name will cause the to be thrown.

  Adds an 8-bit signed integer value into the store.

  The name to associate with the value, so it can be deserialized later. The Sbyte value to serialize.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void `` ``

  If two values are added with names that differ only by case, no exception will be thrown, which is not a recommended practice. However, adding two values with the exact same name will cause the to be thrown.

  Adds a single-precision floating-point value into the store.

  The name to associate with the value, so it can be deserialized later. The single value to serialize.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.CLSCompliant(false)
  System.Void `` ``

  If two values are added with names that differ only by case, no exception will be thrown, which is not a recommended practice. However, adding two values with the exact same name will cause the to be thrown.

  Adds a 16-bit unsigned integer value into the store.

  The name to associate with the value, so it can be deserialized later. The UInt16 value to serialize.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.CLSCompliant(false)
  System.Void `` ``

  If two values are added with names that differ only by case, no exception will be thrown, which is not a recommended practice. However, adding two values with the exact same name will cause the to be thrown.

  Adds a 32-bit unsigned integer value into the store.

  The name to associate with the value, so it can be deserialized later. The UInt32 value to serialize.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.CLSCompliant(false)
  System.Void `` ``

  If two values are added with names that differ only by case, no exception will be thrown, which is not a recommended practice. However, adding two values with the exact same name will cause the to be thrown.

  Adds a 64-bit unsigned integer value into the store.

  The name to associate with the value, so it can be deserialized later. The UInt64 value to serialize.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void `` `` ``

  The assigned type is always the type of the object, or one of its parents.

  If two values are added with names that differ only by case, no exception will be thrown, which is not a recommended practice. However, adding two values with the exact same name will cause the to be thrown.

  Adds a value into the store, where is associated with and is serialized as being of .

  The name to associate with the value, so it can be deserialized later. The value to be serialized. Any children of this object will automatically be serialized. The to associate with the current object. This parameter must always be the type of the object itself or of one of its base classes.
- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.String To be added.

  The is the same as the value returned by property of the assembly of the containing type. This is the assembly name that the formatter uses when serializing type information for this object.

  The assembly name contains the name of the assembly, version, culture, and some security information about the object.

  Users who are changing the type being serialized (for example, to send a proxy for a particular type) will set the value of this property.

  Do not use this property during deserialization because the value of this property is undefined.

  Gets or sets the assembly name of the type to serialize during serialization only.

- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.String To be added.

  The is the same as what would be returned by calling the on . This is the type name the formatter uses when serializing type information for this object.

  Users who are changing the type to serialize (for example, to send a proxy for a particular type) will want to set the value of this property.

  Do not use this property during deserialization because the value of this property is undefined.

  Gets or sets the full name of the to serialize.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Boolean ``

  If the value is a Boolean, or can be converted to one, that value is returned; otherwise, a is thrown. All conversions are done by the associated with this .

  Retrieves a Boolean value from the store.

  The Boolean value associated with .

  The name associated with the value to retrieve.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Byte ``

  If the value is an 8-bit unsigned integer, or can be converted to one, that value is returned; otherwise, a is thrown. All conversions are done by the associated with this .

  Retrieves an 8-bit unsigned integer value from the store.

  The 8-bit unsigned integer associated with .

  The name associated with the value to retrieve.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Char ``

  If the value is a Unicode character, or can be converted to one, that value is returned; otherwise, a is thrown. All conversions are done by the associated with this .

  Retrieves a Unicode character value from the store.

  The Unicode character associated with .

  The name associated with the value to retrieve.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.DateTime ``

  If the value is a , or can be converted to a , that value is returned; otherwise, a is thrown. All conversions are done by the associated with this .

  Retrieves a value from the store.

  The value associated with .

  The name associated with the value to retrieve.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Decimal ``

  If the value is a decimal, or can be converted to a decimal, that value is returned; otherwise, a is thrown. All conversions are done by the associated with this .

  Retrieves a decimal value from the store.

  A decimal value from the .

  The name associated with the value to retrieve.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Double ``

  If the value is a double, or can be converted to a double, that value is returned; otherwise, a is thrown. All conversions are done by the associated with this .

  Retrieves a double-precision floating-point value from the store.

  The double-precision floating-point value associated with .

  The name associated with the value to retrieve.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Runtime.Serialization.SerializationInfoEnumerator

  This function will most often be used by formatters that need to enumerate through the values before writing them out to the stream.

  Returns a used to iterate through the name-value pairs in the store.

  A for parsing the name-value pairs contained in the store.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Int16 ``

  If the value is a 16-bit signed integer, or can be converted to one, that value is returned; otherwise, a is thrown. All conversions are done by the associated with this .

  Retrieves a 16-bit signed integer value from the store.

  The 16-bit signed integer associated with .

  The name associated with the value to retrieve.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Int32 ``

  If the value is a 32-bit signed integer, or can be converted to one, that value is returned; otherwise, a is thrown. All conversions are done by the associated with this .

  Retrieves a 32-bit signed integer value from the store.

  The 32-bit signed integer associated with .

  The name of the value to retrieve.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Int64 ``

  If the value is a 64-bit signed integer, or can be converted to one, that value is returned; otherwise, a is thrown. All conversions are done by the associated with this .

  Retrieves a 64-bit signed integer value from the store.

  The 64-bit signed integer associated with .

  The name associated with the value to retrieve.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.CLSCompliant(false)
  System.SByte ``

  If the value is an Int8, or can be converted to an Int8, that value is returned; otherwise, a is thrown. All conversions are done by the associated with this .

  Retrieves an 8-bit signed integer value from the store.

  The 8-bit signed integer associated with .

  The name associated with the value to retrieve.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Single ``

  If the value is a single-precision floating-point number, or can be converted to one, that value is returned; otherwise, a is thrown. All conversions are done by the associated with this .

  Retrieves a single-precision floating-point value from the store.

  The single-precision floating-point value associated with .

  The name of the value to retrieve.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.String ``

  If the value is a , or can be converted to a , that value is returned; otherwise, a is thrown. All conversions are done by the associated with this .

  Retrieves a value from the store.

  The associated with .

  The name associated with the value to retrieve.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.CLSCompliant(false)
  System.UInt16 ``

  If the value is a 16-bit unsigned integer, or can be converted to one, that value is returned; otherwise, a is thrown. All conversions are done by the associated with this .

  Retrieves a 16-bit unsigned integer value from the store.

  The 16-bit unsigned integer associated with .

  The name associated with the value to retrieve.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.CLSCompliant(false)
  System.UInt32 ``

  If the value is a 32-bit signed integer, or can be converted to one, that value is returned; otherwise, a is thrown. All conversions are done by the associated with this .

  Retrieves a 32-bit unsigned integer value from the store.

  The 32-bit unsigned integer associated with .

  The name associated with the value to retrieve.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.CLSCompliant(false)
  System.UInt64 ``

  If the value is a 64-bit unsigned integer, or can be converted to one, that value is returned; otherwise, a is thrown. All conversions are done by the associated with this .

  Retrieves a 64-bit unsigned integer value from the store.

  The 64-bit unsigned integer associated with .

  The name associated with the value to retrieve.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Object `` ``

  If the data stored in the is of the type requested (or one of its derived classes), that value is returned directly. Otherwise, is called to convert it to the appropriate type.

  The value returned by the method can always be safely cast to the type specified in the parameter.

  Retrieves a value from the store.

  The object of the specified associated with .

  The name associated with the value to retrieve. The of the value to retrieve. If the stored value cannot be converted to this type, the system will throw a .
- Property
  4.0.0.0
  System.Boolean To be added. To be added.

  Gets whether the assembly name has been explicitly set.

- Property
  4.0.0.0
  System.Boolean To be added. To be added.

  Gets whether the full type name has been explicitly set.

- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Int32 To be added: an object of type 'int' To be added

  Gets the number of members that have been added to the store.

- Property
  4.0.0.0
  System.Type To be added. To be added.

  Returns the type of the object to be serialized.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void ``

  The is responsible for setting the of the instance before passing it to . However, users who want to send proxies for their objects will need to change the type represented by this instance. Using the method is equivalent to setting both the and the .

  Sets the of the object to serialize.

  The of the object to serialize.